Set DJANGO_SETTINGS_MODULE als Umgebungsvariable in Windows dauerhaft
Wie kann ich dauerhaft festlegen der Umgebungsvariablen DJANGO_SETTINGS_MODULE
auf WINDOWS
dauerhaft und mit ihm getan werden?
Ich meine
Win Button
+Pause/Break Button
- Dies führt zu
Control Panel\System and Security\System
- Klicken Sie auf
Advanced System Settings
- Klicken Sie auf
Environment Variables
- Es gibt zwei Boxen die erste ist mit dem Titel
User variables
und die zweiteSystem variables
- Auf die
System variables
klicken Sie auf dieNew Button
- Für die variable name setzen in
DJANGO_IMPORT_SETTINGS
XXX--> WAS MACHE ich IN der VARIABLE WERT, UM ES ein FÜR ALLE MAL?
In der Django-Website, die auf dieser Problem heißt es:
DJANGO_SETTINGS_MODULE
Wenn Sie Django, man muss es sagen, welche Einstellungen du verwendest. Tun Sie dies, indem Sie eine Umgebungsvariable DJANGO_SETTINGS_MODULE.
Der Wert DJANGO_SETTINGS_MODULE sollte im Python-Pfad-syntax,z.B. mysite.Einstellungen. Beachten Sie, dass die Einstellungen des Moduls sollten sich auf den Python-import-Pfad suchen.
Was bedeutet es, ...sollte im Python-Pfad-syntax, z.B. mysite.Einstellungen... ?
- Ich einen bestimmten Verzeichnis, in dem meine
Python
befindet sich:
C:\Python27
- Ich einen bestimmten Verzeichnis, in dem meine
Django
befindet sich:C:\Python27\Lib\site-packages\django
Was hat das mysite
bedeutet. In welchem Verzeichnis ist es meanning C:\Something......
Setzen Sie diese variable für alle mal oder müssen Sie ständig wechseln für jedes Projekt (ich hoffe nicht!)
Und was hat das verdächtig Linie bedeutet Beachten Sie, dass die Einstellungen des Moduls sollten sich auf den Python-import-Pfad suchen.
Alle ich will es, setzen Sie die Umgebungsvariable DJANGO_SETTINGS_MODULE und getan werden für alle mal von diesem Streit
BEARBEITEN
, Um zu arbeiten, Django nur noch hingewiesen werden auf eine gültige Einstellungen-Datei und standardmäßig
sieht für eine Umgebungsvariable DJANGO_SETTINGS_MODULE zu sagen, wo sich die
Einstellungen. Der Wert dieser variable sollte den Python-import-Pfad für die Datei mit den Einstellungen, wie Z
als cms.Einstellungen.
--> Was der König von Verzeichnis ist: cms.settings
? In windows jedes Verzeichnis beginnt mit einer Festplatte als C:\Something...... Wie kann man ein Verzeichnis wie in Windows?
EDIT_2
Auszug aus einem Buch
PROBLEM
Umgebungsvariable DJANGO_SETTINGS_MODULE ist nicht definiert.
LÖSUNG
Führen Sie den Befehl python manage.py shell
eher als python
.
MEINE FRAGE --> AUF welchem VERZEICHNIS?///KÖNNEN SIE ES EINMAL ODER IST ES VERSCHIEDENEN PRO PROJEKT?
MEIN PROJEKT IST SO STRUKTURIERT
C:\Python27\pysec-master(file)
|__local_settings.py
|__manage.py
|__settings.py
|__C:\Python27\pysec(file)
|__ __init__.py
|__example.py
|__models.py
|__xbrl.py
|__xbrl_fundamentals.py
Ich versuche zu laufen models.py
und ich habe eine settings.py
im C:\Python27\pysec-master
Finden Sie eine exakte Kopie hier.
MAYBE_IMPORTANT_EDIT
Habe ich eine Datei namens manage.py
in meinem Projekt, das diese Inhalte
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
Macht hat dies zu tun, alles auf die Festsetzung der Variablen? Muss ich hier in der Schleife?
BEARBEITEN
Für den Befehl in den IDLE from django.db import settings
muss ich ein Verzeichnis für die PYTHON_MODULE_SETTINGS
wie C:\Python27\Lib\site-packages\django\db
?
- Können Sie eine haben
DJANGO_SETTINGS_MODULE
dauerhaft oder müssen Sie ändern Sie für jedes Projekt? Jemand...ich stecke seit Tagen auf diesen... - Verfassen Sie eine Antwort.
- Danke eine million!!!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Okay, nicht so frustriert. Schauen wir uns dies Schritt für Schritt:
Python-Pfad-syntax:
In Python, wenn Sie teilen Sie Ihre code-Basis, die über Module, qualifizieren Sie den Namen der Importdatei mit dem Namen des Moduls. Lassen Sie uns sagen, Ihr Projekt ist so aufgebaut:
In Ihrem
main.py
wenn Sie wollen, Zugriff auf Methoden, die Sie definiert haben, infile_utils.py
fügen Sie eine import-Anweisung in Ihremmain.py
wie diese:vorausgesetzt
read_file
ist die Methode, die Sie importieren möchten, inmain.py
. Diese Art der Module zu importieren, wo Sie eine.
Trennung jedes Modul ist auch als python-Pfad-syntax.PYTHONPATH:
Im obigen Beispiel die import-Anweisung würde nur funktionieren, wenn der Python-interpreter weiß, wo zu suchen für das erste Modul, nämlich die
utils
. Nur wenn es findetutils
es findetfile_utils
undread_file
. Geben Sie die Liste aller Pfade, die Sie wollen, dass die Dolmetscher in der Umgebung-variablePYTHONPATH
. So in Ordnung zu haben eine import-Anweisung, wie oben in deinem code, die Sie haben, um sicherzustellen, dass Sie den vollständigen Pfad zu Ihrem Projektmy_project
ist inPYTHONPATH
. Vorausgesetztmy_project
ist inC:\AMAZEBALLS_CODE\my_project
sollten SieC:\AMAZEBALLS_CODE
in IhremPYTHONPATH
DJANGO_SETTINGS_MODULE:
Nun nehmen wir an, Ihr
my_project
ist eigentlich eine Django-Anwendung. Eine Django-Anwendung muss eine Einstellungen-Datei, wo Sie einen ganze Haufen von Dingen. Um zu anweisen, Django, die Einstellungen der Datei zu suchen in geben Sie es inDJANGO_SETTINGS_MODULE
. Vorausgesetzt, dies ist Ihr Projekt Struktur:myroject.site_settings
ist das Modul Django hat einen Blick in die Einstellungen-Datei. Undmyroject.site_settings.dev_settings
ist der Wert, den Sie brauchen, um die Einstellung derDJANGO_SETTINGS_MODULE
im obigen Fall. Bei der Dokumentation sagtcms.settings
odermysite.settings
Sie bedeutencms
odermysite
ist der name des Projekts und dersettings.py
ist der name der Einstellungsdatei.Nun zu deiner Frage:
Können Sie dauerhaft in den Umgebungsvariablen von Windows? Sicher.
Ist es der richtige Weg ist? Nein.
Weil Sie, wenn Sie möchten, erstellen Sie eine weitere Anwendung, die morgen in einem anderen Ort, müssen Sie diese in den Umgebungsvariablen-Bereich von Windows. Auch, es ist eine Praxis, die Verwendung einer anderen settings-Datei für Entwicklung, Umwelt und eins für die Produktion. So eine Einstellung an einem Ort mit einem Wert macht ihn unflexibel. Aber, wenn Sie sind sich bewusst, alle der oben genannten und sicher, Sie sind gonna werden mit nur die Einstellungen der Datei festlegen
DJANGO_SETTINGS_MODULE
zumyproject.site_settings.dev_settings
in die env-Variablen-Abschnitt.Hoffe, das hilft!
EDIT:
Sieht aus wie Sie setzen Ihre
pysec-master
Projekt inC:\Python27
. Nicht setzen Sie Ihre Projekte in der python-installation. Erstellen Sie einesettings.py
- Datei in Ihrem Projekt und setzenDJANGO_SETTINGS_MODULE
zupysec-master.settings
pysec-master
meine Projekte name muss ich die Eingabe alspysec-master.settings
auf dieIDLE
oder diecmd
? Wenn es auf dercmd
ich muss gehen Sie zu diesem Verzeichnis, und geben Sie es zucmd
? Ich werde versuchen, dass man sich und dann werde ich versuchen aufIDLE
in PythonC:\Python27
- Datei. Als Anfänger dachte ich, es war das vernünftigste, was zu tun ist. Es scheint, das ist es nicht. Ändern die Lage nun...pysec-master
- Datei und die entsprechenden Umgebungsvariablen. Aber das Projekt, das ich heruntergeladen habe, github hat einesettings.py
also ich denke, ich könnte es nicht zu machen.pysec-master.settings
gut zwei heiße Fragen... 1) Auf dercmd
oder dieIDLE
und 2) lege ich das Verzeichnis fürpysec_master.settings
wieC:\pysec-master.settings
?settings.py
- Datei?Sagte Sie:
Wenn Sie nicht wollen, zu gehen durch eine langwierige Prozedur, jedes mal, die Sie nicht haben, um Sie permanent zu machen, müssen Sie nur die Prozedur automatisch.
Erstellen einer Fledermaus und legte
set DJANGO_SETTINGS_MODULE='xxx.settings'
im inneren.Wenn Sie mit virtualenv, können Sie die Umgebungsvariable in bin/aktivieren.bat.
bat
Datei ( werde ich aber). Sie haben gesagt:'xxx.settings'
und meine Frage ist: haben Sie legen das Verzeichnis, das führt mich zu meinem Projekt, das istpysec-master
auf eineWindows
Umfeld?-wie `C:\pysec-master.settings... Ist der Letzte, den ich sagte, richtig?settings.py
- Datei?C:\pysec-master
und dann Einstellungen?