Запуск django в virtualenv - ImportError: Нет модуля с именем django.core.management?

Я установил Django после активации моего virtualenv, но все же я получаю следующую ошибку

from django.core.management import execute_from_command_line
ImportError: No module named django.core.management

Ответ 1

Если вы уже активировали свой virtualenv (source /path/bin/activate), проверьте, установлен ли Django.

pip install django

С помощью следующей команды вы можете увидеть, была ли установлена ​​Django.

pip freeze | grep django

Еще одна вещь, которую вы можете попробовать - удалить первую строку (#!/usr/bin/env python) в файле manage.py.

Ответ 2

Вы должны проверить, установлено ли django Активируйте свою среду, затем запустите следующую команду, чтобы посмотреть, какая версия установлена:

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

Ответ 3

 sudo pip install django --upgrade

работал у меня, кстати, у меня нет вирутальной среды.

Ответ 4

Я обнаружил, что одновременно устанавливал Python 3.4 и 2.7, а команда pip install django==1.7 автоматически решила, что Python 3.4/dist-packages будет там, где он должен жить. Я записался в каталог Python 2.7 и перезапустил его... и все хорошо.

Ответ 5

У меня была такая же проблема, когда я запускал Django из виртуальной среды, а затем используя другое окно терминала выполнял команду python manage.py shell без первого переключения на venv.

Проблема была решена после того, как я вернулся.

Ответ 6

Я использую виртуальную среду, поэтому я добавил эту строку в manage.py:

sys.path.append('./myvenv/lib/python3.5/site-packages')

в котором myvenv - имя моей виртуальной среды, а версия моего установленного Python - 3.5. Это решило мое решение.

Ответ 7

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

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

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