Best Practices für eine Django-Arbeitsverzeichnisstruktur
Django ist ein fantastisches Python-basiertes Open-Source-Webentwicklungs-Framework, mit dem Sie Full-Stack-Webanwendungen erstellen können. Da es sich um ein Framework handelt, kann man zunächst viele Dateien innerhalb der Projekte erwarten. Es kann für einen Anfänger anfangs zu überwältigend sein, aber es gibt keinen Grund zur Sorge; mit der Zeit wird alles einfach aussehen.
Eine Webanwendung hat zwei Seiten: Entwicklung und Produktion. Die Entwicklungsseite hat andere Einstellungen als die Produktionsseite. Django-Anwendungen haben viele Ordner wie static
, media
, templates
usw. Da es Django schon eine Weile gibt, müssen Sie die Best Practices für eine Django-Arbeitsverzeichnisstruktur für erfolgreichere Projekte in diesem Bereich kennen Bereich. Wir werden hier im Artikel über diese Methoden sprechen, also lesen Sie weiter!
Django-Verzeichnisstruktur
Die Verzeichnisstruktur eines Django-Projekts sollte etwa so aussehen:
Project Folder/
.gitignore
LICENSE.rst or LICENSE.md
Documentation/
README.rst or README.md
environment
requirements.txt
MyProject/
manage.py
media/
MyProject/
__init__.py
settings/
__init__.py
base.py
development.py
production.py
.env
urls.py
wsgi.py
AppOne/
static/
AppOne/
templates/
AppOne/
urls.py
views.py
models.py
AppTwo/
static/
AppTwo/
templates/
AppTwo/
urls.py
views.py
models.py
AppThree/
static/
AppThree/
templates/
AppThree/
urls.py
views.py
models.py
Django-Stammordner
Der Root-Ordner Project Folder
enthält Django-Projekte und alle anderen zum Projekt gehörenden Dateien wie license
, README
, environment
, requirements.txt
, .gitignore
und Documentation or Docs
.
Django-Projektordner
Innerhalb des Django-Projekts MyProject
sollten sich die Datei manage.py
, der Ordner media
, der Ordner MyProject
mit der Datei settings.py
und die Django-Anwendungen befinden.
Ordner für Django-Projekteinstellungen
Django stellt uns standardmäßig eine einzelne settings.py
-Datei und einige andere wichtige Dateien wie urls.py
, wsgi.py
usw. zur Verfügung. Die settings.py
-Datei enthält Einstellungen für die Produktion und Entwicklung. Daher kann es für ein bedeutenderes Projekt länger werden.
Daher ist es eine gute Idee, die Einstellungen in ihre jeweiligen Dateien aufzuteilen. Die Datei base.py
enthält die Einstellungen, die sowohl für die Entwicklung als auch für die Produktion gelten. Die Datei development.py
enthält alle anwendbaren Einstellungen für die Entwicklung und die Datei production.py
enthält alle Produktionseinstellungen.
Die Entwicklungs- und Produktionsseite können unterschiedliche Datenbankeinstellungen, Passwortvalidierungseinstellungen, E-Mail-Einstellungen, Zahlungseinstellungen, API-Schlüssel und andere Konfigurationen haben.
Wenn Sie Python Decouple
verwenden, um sensible Daten zu speichern, sollte sich auch die Datei .env
in diesem Ordner befinden.
Django-Anwendungen
Jede Django-Anwendung hat einen static
Ordner und einen templates
-Ordner. In diesen Ordnern befindet sich ein weiterer Ordner mit dem Namen der Anwendung. In diesen Ordnern werden alle statischen Dateien und Vorlagen abgelegt.
Dieser Ansatz ermöglicht es uns, mehrere Dateien mit demselben Namen zu haben. Zum Beispiel kann jede Anwendung eine index.html
-Datei und eine style.css
haben, und es wird einfacher, darauf zuzugreifen.
----------
HTML Files
----------
{% url 'AppOne/index.html' %}
{% url 'AppTwo/index.html' %}
{% url 'AppThree/index.html' %}
---------
CSS Files
---------
{% static 'AppOne/style.css' %}
{% static 'AppTwo/style.css' %}
{% static 'AppThree/style.css' %}