Подтвердить что ты не робот

ImportError: Нет модуля с именем django.core.management при использовании manage.py

Я пытаюсь запустить python manage.py runserver в приложении Django, которое у меня есть, и я получаю эту ошибку:

Traceback (most recent call last):
File "manage.py", line 8, in <module>
 from django.core.management import execute_from_command_line
ImportError: No module named django.core.management

Вот вывод pip freeze | grep -i django, чтобы показать, что я действительно установил Django:

Django==1.6.5
django-cached-authentication-middleware==0.2.0
django-cors-headers==1.1.0
django-htmlmin==0.7.0
django-static-precompiler==0.9
djangorestframework==2.3.14

Кроме того, попытка выполнить /usr/local/bin/python2.7 manage.py runserver дает ту же ошибку.

4b9b3361

Ответ 1

Чтобы исправить мою проблему, я использовал следующую строку в моем .zprofile:

export PYTHONPATH=/usr/local/lib/python2.7/site-packages

Я пытался импортировать Django, и его не удалось найти, и выполнение вышеописанной проблемы.

Ответ 2

Возможные проблемы, которые могут вызвать вашу проблему:

  • PYTHONPATH настроен неправильно, чтобы его настроить:

    export PYTHONPATH=/usr/local/lib/python2.7/site-packages
    
  • Вы забыли строку #!/usr/bin/env python в начале manage.py

  • Если вы работаете с virtualenv, вы забыли активировать виртуальный env для выполнения команд manage.py(возможно, вы установили Django в свою систему, но не на ваш virtualenv)

    source path/to/your/virtualenv/bin/activate
    

    или

    workon env_name
    
  • У вас есть Python 2.7 и Python 3.4, входящие в пакет

  • Вы используете очень старый Python 2.4, и вы должны сказать системе использовать свой Python 2.7 с помощью

    alias python=python2.7
    

Несколько раз переустановка/обновление Django устраняет некоторые из этих проблем.

Вы можете выполнить

python -c "import django; print(django.get_version())"

чтобы проверить, установлен ли Django на вашем ПК или ваш virtualenv, если вы используете один

Вы можете найти другие решения в других подобных вопросах:

Ответ 3

Я решил эту же ошибку, выполнив следующую команду:

python3.4 manage.py runserver

И эта команда успешно выполнена для меня. Итак, что вы можете попробовать, если вы используете python 2.7, то просто замените 3.4 на 2.7. Надеюсь, это поможет.

Ответ 4

Я столкнулся с той же проблемой, когда выполнил всю настройку и запустил django с Python3, но выполнил следующую команду:

$ python manage.py migrate

исправлена ​​проблема с использованием согласованной версии Python:

$ python3 manage.py migrate
Operations to perform:
  Apply all migrations: sessions, auth, admin, contenttypes
Running migrations:
  Rendering model states... DONE
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying sessions.0001_initial... OK

Другие команды, которые я выполнил до этого:

python3 -m pip install django
django-admin startproject learning_site
python3 manage.py  runserver 0.0.0.0:8000

Ответ 5

Если вы используете virtualenv и запустите manage.py runserver в системе Windows, cmd будет использовать системный python, а не питон в virtualenv. Потому что если вы устанавливаете python в систему, cmd автоматически будет использовать python, установленный в системе, а не питон в virtualenv. Поэтому, если вы используете virtualenv в Windows. вам нужно запустить

>python .\manage.py runserver

Ответ 6

Эта ошибка связана с пользовательской средой. Действительно, я просто добавляю путь bin bin virtuel к PATH, и проблема решена.

PATH=/bin/of_virtualenvironment/:$PATH

Ответ 7

Прямая проблема заключается в том, что пакет django отсутствует. Для меня, когда я запускал django в virtualenv, эта проблема возникает после того, как я переименую свой рабочий каталог.

Повторная установка env сработала для меня.

Ответ 8

где находится ваш файл django, проверьте первую строку django-admin.py:

#!/usr/bin/env python

Если вы используете python 3+, python здесь может ссылаться на python2 здесь. Поэтому проверьте, какой из python вы устанавливаете django с.

ls -l $(which -a python3)

Если у вас установлен python3 и не связан как python, измените первую строку shebang на

#!/usr/bin/env python3

Ответ 9

Кроме того, убедитесь, что вы не испортили свой .bashrc с помощью alias es. Вы получите такие ошибки, если .bashrc содержит что-то вроде alias python="/usr/bin/python3".

Ответ 10

Я обнаружил, что могу импортировать модуль django из интерпретатора python, но django-admin.py не смог импортировать его при запуске из командной строки.

Я подтвердил, что я использую интерпретатор python в своей виртуальной среде.

Я использовал 64-битную версию python. Деинсталляция и установка 32-разрядной версии, а затем повторное создание моего venv решили это для меня.

Ответ 11

Исправлена та же проблема в моем проекте с использованием только;

pip install -r requirements.txt

Мне больше ничего не нужно было делать. Когда я запускал ./manage.py runserver все работало!

Ответ 12

я решил эту проблему, установив Django в виртуальной среде, над которой я работал