Question

I a récemment proposé une application django de c:\Users\user\django-projects\foo\foobar à c:\Python25\Lib\site-packages\foo\foobar (qui se trouve sur le chemin de python). J'ai commencé une nouvelle application dans le répertoire django-projects et ajouté foo.foobar au réglage de INSTALLED_APPS. Lorsque je tente de lancer le serveur dev (manage.py runserver) pour ma nouvelle application, je reçois le ImportError: No module named foobar d'erreur.

En regardant à travers le retraçage, il cherche dans le c:\Users\user\django-projects\foo\..\foo\foobar pour l'application foobar. J'ai vérifié mon PATH et les variables d'environnement PYTHONPATH, ni le point de c:\Users\user\django-projects\foo et il ne montre pas dans sys.path quand je lance l'interpréteur python.

Je devine que je c:\Users\user\django-projects\foo en quelque sorte ajouté au chemin de django quelque temps le long du développement de foo mais je ne me souviens pas comment je l'ai fait.

Alors, avec tout ce qui mènent, ma question est « comment puis-je faire paraître dans manage.py c:\Python25\Lib\site-packages au lieu de c:\Users\user\django-projects\foo? »

Merci,

  • Lexo
Était-ce utile?

La solution

Les importations de manage.py settings.py du répertoire courant et passer settings comme paramètre à execute_manager. Vous avez probablement défini racine du projet dans settings.py.

Autres conseils

Je l'ai fixé, bien que je ne sais pas quelle solution a fonctionné. Tout d'abord, je supprimé les fichiers .pyc de mon projet, je réindexer ma recherche de Windows (je devine ce qu'il a fait). Cela a changé le message d'erreur dans le répertoire approprié. Après quoi, je réalise que j'avais

from baz import settings

dans mon fichier foobar/baz/models.py, ce qui était à l'origine du problème tout au long. J'ai changé cela

import settings

qui fixe le problème. Merci à Laurent pour votre aide: -)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top