Klon von Stack Overflow, in dem ich fast alle Funktionalitäten implementiert habe. Meine Absicht war es, Entwicklern Einblicke und Demonstrationen in das Innenleben von Stack Overflow zu geben – einschließlich der Art und Weise, wie Aufgaben hinter den Kulissen ausgeführt werden und wie Abfragen ausgeführt werden.
Hinweis: Schauen Sie sich bitte den Blog an, in dem erklärt wird, was ich aus diesem Projekt gelernt habe.
Hier ist eine funktionierende Live-Demo: Demo (aus Heroku entfernt, da das Produktions-LOGO von so verwendet wird )
Python 3.7.x
Django Web Framework 3.2.x
Redis 5.x
BootStrap 4
Abfrage 3
Postgresql 14
Zur Vergabe werden mehr als 50 Abzeichen implementiert
20 Privilegien zum Verdienen
Track-Abzeichen
Reputationsverleihung
Berechtigungs- und Aktivitätsbenachrichtigungen
Live-Q&A-MarkDown-Vorschau
Benutzer-@Erwähnung in Kommentaren
Erstellen und vergeben Sie Kopfgelder
Threading
um den Überblick über die verbleibenden Tage von Bounty zu behalten.
Überprüfungsaufgaben:
Überprüfung der ersten Frage
Überprüfung der ersten Antwort
Überprüfung der verspäteten Antwort
Überprüfen Sie die markierten Beiträge
Überprüfen Sie die markierten Kommentare
Überprüfen Sie die Schlussabstimmungen
Überprüfen Sie die ReOpen-Abstimmungen
Überprüfen Sie Beiträge von geringer Qualität
Überprüfen Sie die vorgeschlagenen Änderungen
Und noch viel mehr. Eine Liste aller Funktionalitäten finden Sie hier
Klonen Sie dieses Repository
Klonen Sie dieses Projekt mit
$ git clone https://github.com/Yawan-1/StackOverFlow--Clone
Für die Nutzung von Postgresql* müssen Sie es herunterladen und installieren.
Laden Sie Postgresql über diesen Link herunter
Erstellen Sie nach der Installation mit diesen Befehlen eine Datenbank in der Postgresql-Shell
CREATE DATABASE so_clone;
CREATE USER so_clone_user WITH PASSWORD 'password';
GRANT ALL PRIVILEGES ON DATABASE so_clone TO so_clone_user;
und füllen Sie den Datenbanknamen , das Datenbankkennwort und den Benutzer in der Datei settings.py
aus
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'so_clone', 'USER': 'so_clone_user', 'PASSWORD': 'password', 'HOST': 'localhost', 'PORT': '', } }
*Hinweis: Wenn Sie dieses Projekt mit SQLite einrichten, haben Sie die Möglichkeit, den PostgreSQL-Installationsschritt zu umgehen. Um dies zu tun, denken Sie bitte darüber nach, die Postgresql-Konfiguration auskommentieren und die SQLite-Konfiguration auskommentieren.
Führen Sie nun den Befehl „make migrations
“ aus. Durch Ausführen des Befehls „make migrations“ werden Datenmigrationen durchgeführt, um die „Badges“ in der Datenbank zu speichern. Anschließend migrieren, um die Vorgänge der Datenmigrationen in die Datenbank zu laden.
$ python manage.py makemigrations $ python manage.py migrate
Migrationsvorgänge werden bei der Migrationserstellung automatisch erstellt, um Tags und Tag-Badges zu speichern.
Führen Sie dann einfach den Server mit diesem Befehl aus.
$ python manage.py runserver
Die folgenden Details und Schritte zur Bereitstellung dieser Anwendung
Weitere Informationen finden Sie unter „Bereitstellen der Django-App auf Heroku“.
Wenn Sie Fragen oder Probleme haben, kann es sein, dass es Fehler gibt, die ich möglicherweise übersehen habe. Sie können eine Pull-Anfrage erstellen.
Hinweis: Das Frontend und das vollständige Design befinden sich ebenfalls im Repo dieses Projekts (HTML, CSS).