Eine Beispiel -Foren -App, die auf dem Django -Framework erstellt wurde. Ich habe diese App erstellt, um Django mehr zu lernen, und wollte lernen, wie man ein übergeordnetes Datenbankmodell macht, um auch diesen Aspekt von Django zu lernen. Es kann auch als Beispiel -App angesehen werden, um zu sehen, wie die unten aufgeführten Funktionen in Django implementiert werden können.
Beinhaltet:
Die Einstellungsdatei wird in der Produktion und in den Entwicklungseinstellungsdateien aufgeteilt. Auch das Projekt hat einen Docker-compose.yml für die Produktion und eine für die Entwicklung. In den Docker-Compose-Dateien finden Sie den Parameter, für den die Einstellungsdatei für den Befehl runServer verwendet werden soll. Um für jeden Befehl einfacher und weniger zu tippen, gibt es ein Makefile mit verschiedenen gemeinsamen Operationen.
Hinweis: Ich habe dieses Projekt nicht wie unten unter Windows oder Linux getestet. Nur auf MacOS.
https://github.com/Joeriksson/django-forums-app.git
Installieren Sie Docker Desktop, um die Docker -Umgebung zu verwenden.
Erstellen Sie eine .env -Datei im Stammordner mit den folgenden Parametern:
SENDGRID_PASSWORD=<you sendgrid password>
SENDGRID_USERNAME=<your sendgrid username>
SECRET_KEY=<your secret key>
DEBUG=True
SENTRY_KEY=<your sentry key>
SENTRY_PROJECT=<your sentry project id>
Hinweis: Bei Verwendung der Entwicklungseinstellungen benötigen Sie kein SendGrid -Konto. Es sendet die E -Mail standardmäßig an die Konsole. Sie können einfach einige zufällige Werte für diese einsetzen. Außerdem müssen Sie Sentry nicht zum Protokollieren verwenden. Kommentieren Sie einfach die Sentry -Einstellungen in /settings/base.py.
make dev_build
Der Behälter sollte jetzt in Betrieb sein. Schauen Sie sich Ihren Browser an, dass Sie eine Start -Webseite unter http://127.0.0.1:8080 sehen
Führen Sie eine Migration durch, um die Datenbanken zu erstellen
make dev_web_exec cmd='python manage.py migrate'
make dev_web_exec cmd='python manage.py createsuperuser'
Wenn Sie den Containerlauf stoppen möchten:
make dev_down