Ich denke über ein neues Django-Projekt nach und muss jetzt einen Projektnamen auswählen, damit ich tippen kann:
%Vor%Das wirft Zweifel auf, ich bin mir des Namens nicht sicher, und ich denke, dass ich es in Zukunft vielleicht ändern möchte. Also, ich habe zwei Fragen:
Danke!
Der Hauptprojektname wird als Basis für Ihren Namespace verwendet.
Standardmäßig haben Sie in der Zeile settings.py: "ROOT_URLCONF = 'something.urls'".
Um einen Projektnamen zu ändern, müssen Sie jeden einzelnen Import, der darauf verweist, ändern.
Natürlich können Sie immer Module ohne "etwas" -Präfix verwenden, dann müssen Sie sicherstellen, dass es keinen Namens- / Namespace-Konflikt zwischen den Modulen gibt. Ich verwende diese Option, weil ich den gleichen Code in einigen Kopien ohne zusätzlichen Aufwand haben kann.
Spät zu dieser Party, aber für zukünftige Referenz kann dies jemandem helfen. Ich musste nur einen Projektnamen ändern, weil er mit dem Namen einer Drittanbieter-App kollidierte. Es ist einfacher, einen Projektnamen als einen App-Namen zu ändern! (Django 1.11)
Ordnerstruktur
%Vor%venv
verwenden, generieren Sie ein aktuelles requirements.txt
mit pip freeze
project/
Ordner in newproject
um
project
in newproject
in den Python-Dateien: manage.py , suchen Sie nach DJANGO_SETTINGS_MODULE
settings.py , suchen Sie nach DJANGO_SETTINGS_MODULE und WSGI_APPLICATION und einem Kommentar. Sie können und sollten den Namen der Datenbank und des Datenbankbenutzers unverändert lassen, vorausgesetzt, Sie möchten die Daten behalten.
urls.py in einer Zeichenfolge mit drei Anführungszeichen
wsgi.py , DJANGO_SETTINGS_MODULE plus einen Kommentar
Wenn Sie eine virtuelle Umgebung verwenden, müssen Sie sie neu erstellen. Ich habe venv
in old.venv
umbenannt, dann virtualenv-3 venv
, dann pip install
und die Anforderungsdatei, die du bei 1. generiert hast. Trash old.venv
wenn du sicher bist, dass die neue AOK funktioniert.
/path/to/project
wird auch in Systemkonfigurationsdateien wie /etc/nginx
und einer .service
Datei für Gunicorn enthalten sein, die in /path/to/newproject
geändert werden müssen.
Starten Sie den Server neu und testen Sie ihn. Sollte funktionieren.
Jetzt können Sie eine App namens project
zu Ihrer INSTALLED_APPS hinzufügen!
Ich weiß jetzt, dass es eine gute Idee ist, interne Django-Projekte ${my_org_name}_something
oder ähnliches aufzurufen, damit sie nicht mit Apps von Drittanbietern kollidieren.
Tags und Links django