Django установлен, но не может импортировать Django в Python
Я установил Django несколькими способами, через apt-get а также pip install, Все они говорят, что у меня самая последняя версия Django. Теперь, когда я запускаю python в Терминале и набираю в импорте django, я получаю
ImportError: No module named django
Тем не менее, когда я бегу django-admin --version я получил
1.4.3
Я знаю, что он установлен, но почему python не находит модуль django?
4 ответа
python не находит django потому что это не на своем пути. Вы можете увидеть список путей python выглядит для таких модулей:
$ python
>>> import sys
>>> sys.path
Вы можете импортировать django если вы найдете место, где он установлен, и добавьте его в pythonпуть, например, так:
$ PYTHONPATH=/path/to/django/parent/dir python
>>> import django # should work now
Но ваша настоящая проблема в том, что что-то не так с вашим python монтаж. Если вы установили оба python А ТАКЖЕ django с помощью apt-get, затем django конечно должно быть на pythonПуть без грязных взломов, как указано выше.
Тем не менее, при работе с Django лучше всего не использовать apt-get но создать виртуальную среду, используя virtualenv (вы можете установить virtualenv сам с помощью apt-get) и установите Django и другие модули, которые могут понадобиться вашему сайту Django с помощью pip в виртуальной среде. Таким образом, вы можете иметь несколько проектов Django бок о бок с точно теми модулями и версиями Python, которые ему требуются. Это всего лишь несколько дополнительных шагов, но, безусловно, оно того стоит и избавит вас от большого разочарования в будущем.
У меня была такая же проблема, когда я использовал PyCharm Community Edition для создания проектов Django.
Для меня сработали следующие шаги:
Оказывается, python хочет, чтобы вы создали виртуальную среду, установили в ней django и затем запустили сервер. Сделать это,
СОЗДАТЬ ВИРТУАЛЬНУЮ СРЕДУ
1) Установите виртуальную среду с помощью pip install virtualenv.
2) Перейдите в папку проекта и введите virtualenv env (здесь env - имя виртуальной среды). Это создаст новую папку с именем env внутри папки проекта.
3) Перейдите в env/Scripts внутри вашей папки проекта, используя cd env/Scripts.
4) Тип активировать и нажмите Enter. Это должно запустить виртуальную среду. Вы можете проверить это, так как (env) будет иметь префикс к вашему текущему пути.
УСТАНОВИТЬ ДЖАНГО
1) Оказавшись в виртуальной среде, вернитесь в папку вашего проекта с помощью cd ../.. и введите pip install django
2) Вы можете проверить его установку, набрав django-admin --version. Он должен отображать номер версии django, установленный в виртуальной среде.
Теперь введите python manage.py runserver, чтобы запустить сервер python.
Я столкнулся с той же проблемой. Я активировал виртуальную среду $ source bin/activate
после этого он показал мне версию Django
Не было необходимости ничего устанавливать.
mamata @ mamta-inspire-all: ~ / dodjango $ python -m django --version / usr / bin / python: нет модуля с именем django
mamata @ mamta-inspire-all: ~ / dodjango $ django-admin --version
Команда django-admin не найдена, но может быть установлена с помощью:
sudo apt установить python-django-common
mamata @ mamta-inspire-all: ~ / dodjango $ source bin / активировать
(dodjango) mamata@mamta-inspire-all:~ / dodjango $ ls
bin включает lib64 mamusite pyvenv.cfg share
(dodjango) mamata@mamta-inspire-all:~ / dodjango $ django-admin --version2.2.5
(dodjango) mamata@mamta-inspire-all:~ / dodjango $ python -m django --version 2.2.5
У меня есть эта проблема, и до недавнего времени в моем проекте vscode не распознавал мою виртуальную среду, поэтому, когда я пытаюсь запустить проект, выдается ошибка, из-за которой vscode не может импортировать django
Исправление для этого для меня, что я экспортировал библиотеки в моей виртуальной среде для заполнения
pip freeze > req.txt
Затем я создал новую виртуальную среду с теми же требованиями, и это сработало
примечание: попробуйте поискать эту виртуальную среду Python
Если на вашем компьютере установлено несколько версий Python. Различные пакеты, которые вы пытаетесь установить, конфликтуют друг с другом. Итак, лучший подход - использовать virtualenv.
- Простая установка виртуальной среды и версия Python
- использовать virtualenv env для создания виртуальной среды.
- активируйте свой virtualenv. с помощью. / Env_name/ бен / активировать
- используйте pip install django==1.70 (укажите версию для установки django)
- Список пипсов, чтобы вывести список всех установленных пакетов.
У меня возникла эта проблема, когда я переименовал папку проекта в PyCharm.
- Вкладка терминала перестала попадать в виртуальную среду (
venvпапка). Чтобы исправить это, я пошел вSettings -> Project -> ProjectПереводчик и там поменял папку. - Джанго "исчез".
django-admin --versionНе ответил. Чтобы исправить, я сделалpip install djangoв пределахvenv,
Это помогло.