web-dev-qa-db-fra.com

Django - "pas de module nommé Django.core.management"

L'erreur suivante s'affiche lorsque j'essaie d'exécuter Django à partir de la ligne de commande.

File manage.py, line 8, in <module>
     from Django.core.management import execute_from_command_line
ImportError: No module named Django.core.management

Des idées sur la façon de résoudre ceci?

92
Krasimir

On dirait que Django n'est pas installé. Vous devriez vérifier le répertoire produit par cette commande: 

python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"

Pour voir si vous avez les paquets Django dedans. 

S'il n'y a pas de dossier Django dans site-packages, Django n'est pas installé (du moins pour cette version de python). 

Il est possible que vous ayez plusieurs versions de python installées et que Django se trouve dans une autre version. Vous pouvez trouver toutes les versions de python si vous tapez python puis appuyez sur TAB. Voici tous les différents pythons que j'ai. 

$python
python            python2-config    python2.6         python2.7-config  pythonw2.5
python-config     python2.5         python2.6-config  pythonw           pythonw2.6
python2           python2.5-config  python2.7         pythonw2          pythonw2.7

Vous pouvez utiliser la commande ci-dessus pour chaque version de python et consulter le répertoire site-packages de chaque version pour vérifier si Django est installé sur l'une d'entre elles. Par exemple:

python2.5 -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
python2.6 -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"

Si vous trouvez Django à l’intérieur de say python2.6, essayez votre commande originale avec

python2.6 manage.py ...
52
RaviU
Sudo pip install Django --upgrade 

a fait le tour pour moi.

34
Code Tree

J'ai eu la même erreur et je l'ai corrigé de cette manière:

Je devais activer mon environnement virtuel à l'aide de la commande suivante 

source python2.7/bin/activate
28
Anagha

Probablement, dans votre manage.py, la première ligne commence par !/usr/bin/python, ce qui signifie que vous utilisez le python global du système plutôt que celui de votre environnement virtuel. 

alors remplacez 

/usr/bin/python

avec 

~/projectpath/venv/bin/python

et vous devriez être bon.

16
mgPePe

eh bien, j'ai rencontré la même erreur aujourd'hui après avoir installé virtualenv et Django. Pour moi, c’est que j’avais utilisé Sudo ( Sudo pip installer Django ) pour installer Django et j’essayais d’exécuter le manage.py runserver sans Sudo . Je viens d'ajouter Sudo et cela a fonctionné. :)

12
user1578297

Utilisez-vous un environnement virtuel avec Virtual Wrapper? Êtes-vous sur un Mac?

Si oui, essayez ceci:

Entrez ce qui suit dans votre ligne de commande pour démarrer l’environnement virtuel, puis travaillez dessus.

1.) 

source virtualenvwrapper.sh

ou

source /usr/local/bin/virtualenvwrapper.sh

2.) 

workon [environment name]

Remarque (d'un débutant) - ne mettez pas de parenthèse autour du nom de votre environnement

10
Pete Varley

Ce problème se produit lorsque Django n'est pas installé sur votre ordinateur. Lorsque Django n'est pas installé, cela signifie que le module Django.core.management n'est pas installé non plus. Donc, il n'a pas trouvé ce module et il donne une erreur.
Pour résoudre ce problème, nous devons installer Django à l’aide de pip. Ouvrez la ligne de commande cmd (sur Windows) et tapez comme

pip install Django

Cette commande installera Django sur votre ordinateur. Si vous n'avez pas installer pip. vous devriez installer pip. Voici comment installer pip sur windows

5
Harun ERGUL

J'ai le même problème lorsque j'exécute la commande 

python manage.py startapp <nom_app>

mais le problème avec moi, c’est que j’exécutais cette commande hors de l’environnement virtuel. Il suffit donc d’activer votre environnement virtuel d’abord et de relancer la commande

5
Rahul Satal

Bon alors ça va comme ça:

Vous avez créé un environnement virtuel et le module Django n'appartient qu'à cet environnement. Depuis virtualenv s'isole de tout le reste, c'est ce que vous constatez.

passer par ceci pour une assistance supplémentaire:

http://www.swegler.com/becky/blog/2011/08/27/python-Django-mysql-on-windows-7-part-i-getting-started/

1.Vous pouvez basculer vers le répertoire dans lequel votre environnement virtuel est stocké, puis exécuter le module Django.

2.Vous pouvez également installer Django globalement sur votre paquet python-> site-packages en exécutant pip ou easy_install.

Commande utilisant pip: pip install Django

alors fais ceci:

importer Django print (Django.get_version ()) (selon la version de python que vous utilisez. Ceci pour les séries python 3+)

et ensuite vous pouvez exécuter ceci: python manage.py runserver et vérifier votre navigateur Web en tapant: localhost: 8000 et vous devriez voir la page alimentée par Django.

J'espère que cela t'aides.

4
Ashish

Je vis la même chose et c'est ce que je fais.

D'abord mon installation de 

pip install -r Requirements.txt

n'est pas sur mon environnement actif. J'ai donc activé mon environnement, puis exécuté à nouveau le 

pip install -r Requirements.txt

3
Jek Hatulan

Au cas où cela serait utile aux autres ... J'ai ce problème parce que mon virtualenv est réglé par défaut sur python2.7 et que j'appelais Django avec Python3 avec Ubuntu. 

pour vérifier quel python mon virtualenv utilisait:

$ which python3
>> /usr/bin/python3

créé un nouveau virtualenv avec python3 spécifié (à l'aide de virtualenv wrapper https://virtualenvwrapper.readthedocs.org/en/latest/ ):

$ mkvirtualenv --python=/usr/bin/python3 ENV_NAME

le chemin python devrait maintenant pointer vers le python virtualenv:

$ which python3
>> /home/user/.virtualenvs/ENV_NAME/bin/python3
3
sk8asd123

J'ai eu le même problème et après avoir bien fonctionné, vous devriez naviguer dans le dossier principal de votre projet en tapant:

source bin/activate 
2
GoldFish

Cela se produit également si vous modifiez la structure de répertoires de votre projet python (je l'ai fait, puis surpris par le changement de comportement). Si vous le faites, vous devrez modifier une ligne dans votre fichier/bin/activate. Alors, disons que votre projet était à 

/User/me/CodeProjects/coolApp/

et votre fichier d'activation est à

/User/me/CodeProjects/coolApp/venv/bin/activate

lorsque vous configurez votre projet, vous avez modifié votre projet en 

/User/me/CodeProjects/v1-coolApp/

ou quelque chose. Vous devrez alors ouvrir 

/User/me/CodeProjects/v1-coolApp/venv/bin/activate

trouver la ligne où il est dit

VIRTUAL_ENV="/User/me/CodeProjects/coolApp"
export VIRTUAL_ENV

et le changer en

VIRTUAL_ENV="/User/me/CodeProjects/v1-coolApp"

avant de réactiver

2
adamadam

Dans mon cas, j'utilise Ubuntu. Le problème peut être que je n’ai pas l’autorisation d’écrire dans ce dossier en tant qu’utilisateur normal. Vous pouvez simplement ajouter la Sudo avant votre commande et cela devrait fonctionner parfaitement. Dans mon cas, Sudo python manage.py syncdb.

2
user4055792

J'ai eu le même problème et la raison pour laquelle je recevais ce message était parce que je faisais "manage.py runserver" alors que "python manage.py runserver" le corrigeait.

2
MAhsan

avait la même commande problem.run 'python manage.py migrate' en tant que root. fonctionne bien avec un accès root (Sudo python manage.py migrate) 

1
Hemanth Gowda

Mon cas, j'ai utilisé pyCharm 5 sur mac. J'ai également eu ce problème et après avoir exécuté cette commande, mon problème a été résolu

Sudo pip install Django --upgrade 
1
Amir

Vous devez d'abord choisir votre projet avant d'exécuter le serveur, tapez ceci workon your_project_name.__, puis python manage.py runserver

0

Vous pouvez l’essayer comme suit: python3 manage.py migrate (assurez-vous d’être dans le répertoire src/

Vous pouvez également essayer avec pip install -r requirements.txt (assurez-vous de voir le fichier requirements.txt lorsque vous tapez ls après la migration

Si après tout cela ne fonctionne toujours pas, essayez pip install Django

J'espère que ça aide

0
Djamal Dagirov