Ошибка импорта django - нет модуля с именем core.management - PullRequest
180 голосов
/ 18 мая 2011

Хорошо, я вижу множество таких ошибок. Я перепробовал все, что я знаю, и до сих пор не понял этого.

Я работаю на сервере разработки под управлением Python 2.5 и Django 1.3. Django 1.3 был установлен с помощью python setup.py install после распаковки загрузки tar.gz.

Все работает хорошо, мне редко нужно запускать manage.py, но я пытаюсь использовать новое приложение staticfiles и сталкиваюсь с проблемами.

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

Хорошо, у меня проблема PATH.

Из Установка Django Я дважды проверяю каталог site-packages.

python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
/usr/lib/python2.5/site-packages

Хорошо, давайте проверим, что у меня есть, echo $ PYTHON_PATH был пуст, поэтому я установил его

export PYTHON_PATH=/usr/lib/python2.5/site-packages/django

Все еще не повезло. Давайте посмотрим, что должен сказать sys.path

>>> import sys
>>> print sys.path
['', '/usr/lib/python2.5', '/usr/lib/python2.5/plat-linux2', '/usr/lib/python2.5/lib-tk', '/usr/lib/python2.5/lib-dynload', '/usr/local/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages/PIL', '/usr/lib/python2.5/site-packages/django', '/var/lib/python-support/python2.5']

путь есть, я даже создал /usr/lib/python2.5/site-packages/django.pth с содержимым

cat /usr/lib/python2.5/site-packages/django.pth 
/usr/lib/python2.5/site-packages/django/

Кто-нибудь понял, что здесь происходит?

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

python manage.py collectstatic
Traceback (most recent call last):
  File "manage.py", line 14, in <module>
    execute_manager(settings)
  File "/usr/lib/python2.5/site-packages/django/core/management/__init__.py", line 438, in execute_manager
    utility.execute()
  File "/usr/lib/python2.5/site-packages/django/core/management/__init__.py", line 349, in execute
    version=get_version(),
  File "/usr/lib/python2.5/site-packages/django/__init__.py", line 12, in get_version
    from django.utils.version import get_svn_revision
ImportError: No module named utils.version

Я также попытался создать новый проект, чтобы увидеть, есть ли там какие-либо проблемы, и получить ту же ошибку utils.version.

Боковой узел: Unode из #django мне немного помог, настроил virtualenv на той же машине и справился с ошибками, так что все еще не уверен, что происходит с этой фактической установкой здесь, но, похоже, это не относится к проектам django, но в установке django / python.

Ответы [ 29 ]

3 голосов
/ 28 марта 2016

Решено !!!

После поиска возрастов и пробуя все эти другие предложения, которые не работали, я наконец нашел решение для своей установки.

Мои настройки / сценарии:

  • Windows, Python27
  • Мой проект django проверяется через svn
  • при запуске pythonmanage.py runserver в новой папке, я получил ошибку импорта
  • python manage.py runserver , используемый для работы в исходной папке (из которой я буду фиксировать изменения) доЯ удалил его

Решение

Удалите любую папку с именем django в том же каталоге manage.py

Это верно ... как только я удалил папку "django", которая содержала только файл __ init __. Py ... Я мог снова запустить сервер!

Понятия не имею почему, хотя

3 голосов
/ 17 января 2013

Попробуйте изменить первую строку manage.py.

Изменить

#!/usr/bin/python

от

#!/usr/bin/env python
2 голосов
/ 18 января 2014

Для тех из вас, кто использует Django 1.6 или новее, обратите внимание, что execute_manager был удален . Существует решение, опубликованное во втором ответе SO здесь .

2 голосов
/ 13 июля 2015

Сохраните путь python python в переменной и выполните. Это будет включать в себя иные пропущенные пакеты.

python_path= `which python` 
$python_path manage.py runserver
2 голосов
/ 30 июля 2017
python3 manage.py runserver

Проверить версию Python

1 голос
/ 18 января 2012

У меня была похожая проблема. PyCharm не смог запустить сервер, но я мог запустить его из командной строки. Я попробовал какой Python, а затем убедился, что PyCharm был тем же интерпретатором, и тогда все заработало.

1 голос
/ 05 августа 2018

================================== РЕШЕНИЕ ============ =============================

Первый переход: virtualenv

, выполнив команду: Исходный бин / активировать

и установите django, потому что вы получаете ошибку, связанную с 'import django':

pip install django

Затем запустите: python manage.py runserver

(Примечание: пожалуйста, измените 'runserver' на имя программы, которую вы хотите запустить)

По той же проблеме, это работало в моем случае. ================================== Синопсис =============== ========================== ОШИБКА: (Разработка) Rakeshs-MacBook-Pro: src rakesh $ python manage.py runserver Traceback (последний вызов был последним): Файл "manage.py", строка 8, в из django.core.management import execute_from_command_line ModuleNotFoundError: нет модуля с именем 'django'

Во время обработки вышеуказанного исключения произошло другое исключение:

Traceback (последний вызов был последним): Файл "manage.py", строка 14, в импорт джанго ModuleNotFoundError: нет модуля с именем 'django'

Во время обработки вышеуказанного исключения произошло другое исключение:

Traceback (последний вызов был последним): Файл "manage.py", строка 17, в «Не удалось импортировать Django. Вы уверены, что он установлен и» ImportError: Не удалось импортировать Django. Вы уверены, что он установлен и доступен для переменной среды PYTHONPATH? Вы забыли активировать виртуальную среду? (Разработка) Rakeshs-MacBook-Pro: src rakesh $ (Разработка) Rakeshs-MacBook-Pro: src rakesh $ (Разработка) Rakeshs-MacBook-Pro: src rakesh $ python -Wall manage.py test Traceback (последний вызов был последним): Файл "manage.py", строка 8, в из django.core.management import execute_from_command_line ModuleNotFoundError: нет модуля с именем 'django'

Во время обработки вышеуказанного исключения произошло другое исключение:

Traceback (последний вызов был последним): Файл "manage.py", строка 14, в импорт джанго ModuleNotFoundError: нет модуля с именем 'django'

Во время обработки вышеуказанного исключения произошло другое исключение:

Traceback (последний вызов был последним): Файл "manage.py", строка 17, в «Не удалось импортировать Django. Вы уверены, что он установлен и» ImportError: Не удалось импортировать Django. Вы уверены, что он установлен и доступен для переменной среды PYTHONPATH? Вы забыли активировать виртуальную среду?

ПОСЛЕ УСТАНОВКИ django:

(разработка) MacBook-Pro: src rakesh $ pip install django Коллекционирование Джанго Скачивание https://files.pythonhosted.org/packages/51/1a/e0ac7886c7123a03814178d7517dc822af0fe51a72e1a6bff26153103322/Django-2.1-py3-none-any.whl (7,3 МБ) 100% | ████████████████████████████████ | 7,3 МБ 1,1 МБ / с Коллекционирование пыц (из джанго) Загрузка https://files.pythonhosted.org/packages/30/4e/27c34b62430286c6d59177a0842ed90dc789ce5d1ed740887653b898779a/pytz-2018.5-py2.py3-none-any.whl (510 КБ) 100% | ████████████████████████████████ | 512 КБ 4,7 МБ / с Установка собранных пакетов: pytz, django

ПОСЛЕ РАЗРЕШЕНИЯ:

(Разработка) MacBook-Pro: src rakesh $ python manage.py runserver Выполнение системных проверок ...

Проверка системы не выявила никаких проблем (0 отключено).

У вас есть 15 не примененных миграций. Ваш проект может не работать должным образом, пока вы не примените миграции для приложений: admin, auth, contenttypes, session. Запустите «python manage.py migrate», чтобы применить их.

05 августа 2018 - 04:39:02 Django версия 2.1, используя настройки 'trydjango.settings' Запуск сервера разработки на http://127.0.0.1:8000/ Закройте сервер с помощью CONTROL-C. [05 / Aug / 2018 04:39:15] "GET / HTTP / 1.1" 200 16348 [05 / Aug / 2018 04:39:15] «GET /static/admin/css/fonts.css HTTP / 1.1» 200 423 [05 / Aug / 2018 04:39:15] "GET /static/admin/fonts/Roboto-Bold-webfont.woff HTTP / 1.1" 200 82564 [05 / Aug / 2018 04:39:15] "GET /static/admin/fonts/Roboto-Light-webfont.woff HTTP / 1.1" 200 81348 [05 / Aug / 2018 04:39:15] "GET /static/admin/fonts/Roboto-Regular-webfont.woff HTTP / 1.1" 200 80304 Не найдено: /favicon.ico [05 / Aug / 2018 04:39:16] "GET /favicon.ico HTTP / 1.1" 404 1976

Удачи !!

1 голос
/ 30 июля 2014

Я исправил эту проблему, изменив #PATH = "$ VIRTUAL_ENV / bin: $ PATH" на PATH = "$ PATH: $ VIRTUAL_ENV / bin" По неясным для меня причинам исполняемый файл python в dir virtualenv не видит djangoно обычно установленный Python делает.

1 голос
/ 14 мая 2014

Эта ошибка обычно возникает, когда django не установлен.Если вы уже установили django, но все еще получаете ту же ошибку, то вы должны работать в отдельной виртуальной среде.Вам также необходимо установить django в вашей виртуальной среде.Когда вы находитесь в оболочке виртуальной машины, просто сделайте это:

pip install django

Поскольку виртуальная машина имеет отдельную файловую систему, она не распознает django, даже если она установлена ​​на вашем компьютере.система.

0 голосов
/ 11 июля 2018

Приложение с именем site может воспроизвести и эту проблему.

...