2010-03-11 2 views
3

Cela me gêne parce que c'est probablement une solution facile, mais je n'arrive pas à comprendre ce qui pourrait en être la cause.Les commandes Django + Virtualenv: manage.py échouent avec ImportError du nom du projet

J'ai donc une nouvelle boîte de dev et j'établis tout. J'ai installé virtualenv, créé un nouvel environnement pour mon projet sous ~/.virtualenvs/projectname

Ensuite, j'ai cloné mon projet de github dans mon répertoire de projets. Rien d'extraordinaire ici. Il n'y a pas de fichiers .pyc, donc c'est une liste de code propre. Puis, j'ai activé mon virtualenv et installé Django via pip. Tout semble bien jusqu'à présent.

Ensuite, je cours python manage.py syncdb dans mon projet dir. C'est là que je suis confus:

ImportError: No module named projectname 

Donc je me suis dit que j'ai peut-être eu quelques références de nom de projet dans mon code. Donc je grep (ack, en fait) à travers ma base de code et je ne trouve rien de ce genre.

Alors maintenant, je suis à court de données, étant donné cet environnement, pourquoi ai-je un ImportError sur un module nommé projectname qui n'est référencé nulle part dans mon code?

Je suis impatient de trouver une solution .. merci les gars!

+0

Avez-vous vérifié sys.path pour vous assurer que tout semble valide? Je m'assurerais aussi que django .__ file__ est ce que vous attendez (dans votre virtualenv). –

+0

sys.path semble assez valide. Il inclut mon répertoire virtualenv et les répertoires python habituels. Django .__ file__ renvoie __init __. Pyc de django dans mon répertoire virtualenv, aussi. Pas de chance ici alors:/Merci pour votre aide jusqu'à présent - d'autres suggestions? – Bartek

+3

Est-ce que 'projectname' exactement (suffixe modulo) est le nom du répertoire dans lequel se trouve le projet? Wild devinez, mais je sais que Django fait * quelques * choses avec le répertoire courant ... Aussi, qu'est-ce qui essaie d'importer 'projectname'? Avez-vous un retraçage? Sinon, essayez de lancer 'py manage.py --traceback syncdb' et voyez ce qu'il se passe. –

Répondre

1

Est-ce que projectname est exactement (suffixe modulo) le nom du répertoire dans lequel se trouve le projet? Wild devinez, mais je sais que Django fait des choses avec le répertoire courant ...

Aussi, qu'est-ce qui essaie d'importer le nom du projet? Avez-vous un retraçage? Sinon, essayez de courir avec py manage.py --traceback syncdb et voyez ce qui se passe.

Questions connexes