Ich habe Django auf mehrere Arten installiert, über apt-get
und pip install
. Alle sagen, ich habe die neueste Version von Django. Wenn ich jetzt Python im Terminal ausführe und import django eingebe, erhalte ich
ImportError: No module named django
Wenn ich jedoch django-admin --version
ausführe Ich erhalte
1.4.3
Ich weiß, dass es installiert ist, aber warum findet Python das Django-Modul nicht?
Akzeptierte Antwort:
python
findet django
nicht weil es nicht auf seinem Weg ist. Sie können die Liste der Pfade python
sehen sucht nach Modulen wie folgt:
$ python
>>> import sys
>>> sys.path
Sie können django
importieren wenn Sie den Ort finden, an dem es installiert ist, und fügen Sie diesen Ort zu python
hinzu 's-Pfad, zum Beispiel so:
$ PYTHONPATH=/path/to/django/parent/dir python
>>> import django # should work now
Aber Ihr eigentliches Problem ist, dass etwas mit Ihrem python
nicht stimmt Installation. Wenn Sie sowohl python
UND django
mit apt-get
, dann django
sollte auf jeden Fall auf python
sein Weg ohne schmutzige Hacks wie oben.
Das heißt, wenn Sie mit Django arbeiten, ist es am besten, apt-get
NICHT zu verwenden aber erstellen Sie eine virtuelle Umgebung mit virtualenv
(Sie können virtualenv
installieren selbst mit apt-get
) und installieren Sie Django und andere Module, die Ihre Django-Site möglicherweise benötigt, mit pip
innerhalb der virtuellen Umgebung. Auf diese Weise können Sie mehrere Django-Projekte nebeneinander haben, mit genau den Python-Modulen und -Versionen, die es benötigt. Es sind nur ein paar zusätzliche Schritte, aber es lohnt sich auf jeden Fall und wird Ihnen in Zukunft viel Frust ersparen.