Wo kommt django dev-Server (manage.py runserver) erhalten ihren Weg aus?
-
25-09-2019 - |
Frage
Ich zog vor kurzem eine django app von c:\Users\user\django-projects\foo\foobar
zu c:\Python25\Lib\site-packages\foo\foobar
(die auf dem Python-Pfad). Ich begann eine neue App im django-projects
Verzeichnis und foo.foobar
zur INSTALLED_APPS
Einstellung hinzugefügt. Wenn ich versuche, den dev-Server (manage.py runserver
) für meine neue App zu laufen, ich den Fehler ImportError: No module named foobar
erhalten.
Beim Blick durch die Rückverfolgung, es sieht in der c:\Users\user\django-projects\foo\..\foo\foobar
für den foobar
App. Ich habe mein PATH
und PYTHONPATH
Umgebungsvariablen und weder Punkt c:\Users\user\django-projects\foo
und es ist angezeigt nicht in sys.path
, wenn ich das Python-Interpreter ausgeführt werden.
Ich vermute, ich irgendwie c:\Users\user\django-projects\foo
zu Djangos Weg irgendwann an der Entwicklung von foo
hinzugefügt, aber ich erinnere mich nicht, wie ich es tat.
Also, mit allem, was hinführen, meine Frage ist: „Wie kann ich manage.py Blick in c:\Python25\Lib\site-packages
statt c:\Users\user\django-projects\foo
machen?“
Danke,
- Lexo
Lösung
manage.py
Importe settings.py aus dem aktuellen Verzeichnis und übergeben settings
als Parameter execute_manager
. Sie haben wahrscheinlich Projektstamm in settings.py definiert.
Andere Tipps
Ich reparierte es, obwohl ich weiß nicht, welche Lösung gearbeitet. Zuerst habe ich die .pyc
Dateien von meinem Projekt gelöscht, dann indexiert ich meine Windows-Suche (Ich vermute, das es tat). Dies änderte sich die Fehlermeldung in das richtige Verzeichnis. Nach dem, erkannte ich, hatte ich
from baz import settings
in meiner foobar/baz/models.py
-Datei, die das Problem der ganzen Zeit verursacht wurde. Ich änderte diese zu
import settings
, die das Problem behoben. Dank laurent für Ihre Hilfe: -)