manage.py - nicht im Projekt-Ordner?
Ich versuche Django zum ersten mal, und ich versuche zu Folgen das tutorial zur Verfügung gestellt durch das django-team.
Nachdem ich ein neues Projekt erstellt, bekomme ich die folgende Ordner - /Datei-Struktur, genau wie das tutorial sagt ich sollte:
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py
Wenn ich eine app erstellen, die ich ausführen:
python manage.py startapp polls
...das schafft die app "Umfragen" im selben Ordner wie die manage.py Datei - was gibt mir:
mysite/
manage.py
polls/
__init__.py
admin.py
models.py
tests.py
views.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py
Dies bedeutet, dass die app, die ich erstellt, dann erstellt wird, die außerhalb meiner Projekt-Ordner, was natürlich nicht der Fall sein sollte. Ich habe versucht zu bewegen manage.py im Projekt-Ordner. Aber wenn ich das tun und ausführen:
python manage.py syncdb
...Bekomme ich die folgende Fehlermeldung:
raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e))
ImportError: Could not import settings 'testproject.settings' (Is it on sys.path?): No module named testproject.settings
Ich denke, ich könnte verschieben Sie die app manuell in den Projekt-Ordner, aber das ist etwas, ich sollte nicht zu tun haben.
So, entweder ist etwas falsch in der Anleitung (, die ich sehr schwer zu glauben), oder bin ich etwas fehlt hier (wahrscheinlicher).
Vielen Dank im Voraus.
- Ist die Struktur der site, die Sie geschrieben die eigentliche Struktur, oder ein Beispiel?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist die neue richtige layout. "mysite/mysite" ist eine app, und "mysite/Umfragen" ist eine app. Die "mysite" übergeordneten Ordner Sie Ihre Projekt-Ordner.
@holyredbeard das ist die richtige layout-Lesen Sie die ältere Dokumentation?
Nützlich zu Lesen: http://www.tdd-django-tutorial.com/blog/articles/2012/tutorials-updated-django-14-and-its-weird-new-fold/
Nicht verschieben manage.py es sollte draußen sitzen den apps und den Projekt-Ordner.
seit 1.4 Allgemeine layout-Beispiel...
Dies ist die offizielle layout seit der version 1.4.
Die Begründung ist gut erklärt in den release notes:
https://docs.djangoproject.com/en/dev/releases/1.4/#updated-default-project-layout-and-manage-py
Nicht bewegen
manage.py
. Im Allgemeinen können Sie erwarten, dass Django eigenen Skripts immer das richtige tun, müssen Sie nie verschieben Sie alle Dateien, nur um es zu arbeiten.