Хорошо, я вижу много этих ошибок вокруг. Я перепробовал все, что я знаю, и до сих пор не понял этого.
Я работаю на сервере разработки под управлением 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 установить.
источник
import django
вводе в оболочку python?python manage.py syncdb
?Ответы:
Если, как и я, вы запускаете свой django в virtualenv и получаете эту ошибку, посмотрите на свою
manage.py
. Первая строка должна определять исполняемый файл python, используемый для запуска скрипта. Это должен быть путь к python вашего virtualenv, но это что-то не так, как / usr / bin / python, который не является тем же путем и будет использовать глобальную среду python (и пакеты будут отсутствовать). Просто измените путь на путь к исполняемому файлу python в вашем virtualenv.Вы также можете заменить свою линию Шебанга на
#!/usr/bin/env python
. При этом следует использовать правильную среду Python и интерпретатор при условии, что вы сначала активируете свой virtualenv (я полагаю, вы знаете, как это сделать).источник
<path-to-my-env>/bin/python manage.py runserver
#!/Users/Chris/virtualenv/my_first_venv/bin/python
или что-то подобное?Если вы находитесь в virtualenv, вам нужно активировать его, прежде чем вы сможете запустить ./manage.py 'command'
если вы сконфигурируете workon в .bash_profile или .bashrc
* пожалуйста, не редактируйте файл manage.py, возможно, он работает неправильно и может привести к будущим ошибкам
источник
У меня была такая же проблема, потому что я устанавливал Django как супер-пользователь, поэтому не в моем virtualenv. Вы не должны делать
sudo pip install Django
Вместо этого установите его так:
источник
Пожалуйста, переустановите django с помощью pip:
(Замените 1.3 на вашу версию Django)
источник
sudo
для установки в системные каталоги будет мешать собственным пакетам и, скорее всего, нарушит по крайней мере некоторые части вашей установки Python. Я бы порекомендовал virtualenv.Как известно, это была проблема пути.
база моих пользовательских пакетов разделяла имя с каталогом, установленным в / etc / profile. Пакеты были в другом месте, однако для веб-сервера. Так что я удалил оскорбительные записи из моего $ PYTHONPATH и был в порядке!
Спасибо за помощь.
источник
Другой возможной причиной этой проблемы является то, что ваша ОС по умолчанию работает на python3.
Либо вы должны явно сделать:
python2 manage.py
или вам нужно отредактировать шебанг
manage.py
, например так:или если вы используете python3:
источник
#!/usr/bin/env python2.7
У меня была эта ошибка при попытке запустить встроенную систему (с использованием django конечно) на Raspberry Pi 2 (а не на ВМ )
Запуск этого:
Сделал трюк!
источник
Вы, вероятно, используете virtualenvwrapper . Не забудьте выбрать свою среду, запустив:
источник
Для меня мой сервер использовал Python 2.4. Я просто посмотрел Python 2.7, который был установлен на моем сервере, и создал псевдоним.
Если вам нужно знать больше, я нашел решение здесь
источник
У меня возникла та же проблема, когда я пытался создать новое приложение. Если вы пишете
python manage.py startapp myapp
, то он ищет usr / bin / python. Но вам нужен этот " python ", который находится в каталоге / bin вашего виртуального пути env . Я решил это, упомянув путь python virtualenv, например, так:источник
Попробуйте изменить свою первую строку manage.py.
+ Изменить
по
источник
#!/usr/bin/env python
на#!/usr/bin/python
Проверьте версию Python
источник
Решил это !!!
После поиска возрастов и пробуя все эти другие предложения, которые не работали, я наконец нашел решение для моей установки.
Моя настройка / сценарий:
Решение
Удалите все папки с именем django в том же каталоге manage.py
Правильно ... как только я удалил папку "django", которая содержала только файл __init__.py ... Я снова смог запустить сервер!
Понятия не имею, почему, хотя
источник
Для тех из вас, кто использует Django 1.6 или новее, обратите внимание, что execute_manager был удален . Существует решение размещено во втором SO ответа здесь .
источник
Сохраните путь Python Python в переменной и выполните. Это будет включать в себя в противном случае отсутствующие пакеты.
источник
У меня была похожая проблема. PyCharm не смог запустить сервер, но я мог запустить его из командной строки. Я попробовал, какой Python, а затем убедился, что PyCharm был тем же интерпретатором, и тогда все работало нормально.
источник
Эта ошибка обычно возникает, когда django не установлен. Если вы уже установили django, но все еще получаете ту же ошибку, то вы должны работать в отдельной виртуальной среде. Вам также необходимо установить django в вашей виртуальной среде. Когда вы находитесь в оболочке виртуальной машины, просто сделайте это:
pip install django
Это потому, что виртуальная машина имеет отдельную файловую систему, она не распознает django, даже если она установлена в вашей системе.
источник
Я исправил эту проблему, изменив #PATH = "$ VIRTUAL_ENV / bin: $ PATH" на PATH = "$ PATH: $ VIRTUAL_ENV / bin". По неясным для меня причинам исполняемый файл python в dir virtualenv не видит django, но обычно установленный питон делает.
источник
================================== РЕШЕНИЕ =============== ==========================
Первый goto: virtualenv
запустив команду: исходный бин / активировать
и установите django, потому что вы получаете ошибку, связанную с 'import django':
Затем запустите:
(Примечание: пожалуйста, измените 'runserver' на имя программы, которую вы хотите запустить)
По той же проблеме, это работало в моем случае. ================================== Синопсис =============== ==========================
Во время обработки вышеупомянутого исключения произошло другое исключение:
Во время обработки вышеупомянутого исключения произошло другое исключение:
Во время обработки вышеупомянутого исключения произошло другое исключение:
ПОСЛЕ УСТАНОВКИ Django:
ПОСЛЕ РАЗРЕШЕНИЯ:
Удачи!!
источник
ваш проект создан с использованием старой версии django-admin.py, более старой, чем django1.3
чтобы исправить это, создайте другой проект django, скопируйте его manage.py и вставьте его в старый.
источник
Полностью согласился, что это проблема пути, но у меня была такая же ошибка. Это было связано с ошибкой использования относительного пути для моего исполняемого файла Python при настройке моей виртуальной среды. Я сделал это:
Вместо этого мне пришлось указать полный путь к исполняемому файлу Python.
HTH, Харлин
источник
источник ~ / blog-venv / bin / activ
выберите ваш virtualenv, чтобы заменить "blog-venv" здесь.
источник
File "manage.py", line 8, in <module> from django.core.management import execute_from_ ImportError: No module named django.core.management
Убедитесь, что вы используете правильный экземпляр Python с правильными каталогами на пути. В моем случае эта ошибка возникла из-
python
за случайного запуска исполняемого файла - я фактически установил Django вpython2.7
рамках библиотеки и библиотеки. То же самое может произойти и в результате virtualenv.источник
Итак, все идет так:
Вы создали виртуальную среду, и модуль django принадлежит только этой среде. Так как virtualenv изолирует себя от всего остального, поэтому вы видите это.
пройти через это для дальнейшей помощи:
http://www.swegler.com/becky/blog/2011/08/27/python-django-mysql-on-windows-7-part-i-getting-started/
1.Вы можете переключиться в каталог, где хранится ваша виртуальная среда, а затем запустить модуль django.
2.В качестве альтернативы вы можете установить django глобально на ваши пакеты python-> site-package, запустив pip или easy_install.
Команда с использованием pip: pip install django
затем сделайте это:
импорт django print (django.get_version ()) (в зависимости от того, какую версию python вы используете. Это для серии python 3+)
и затем вы можете запустить это: python manage.py runserver и проверить в вашем веб-браузере, набрав: localhost: 8000, и вы должны увидеть страницу с поддержкой django.
Надеюсь это поможет.
источник
Я включил имя нового приложения в список INSTALLED_APPS в файле settings.py «до того, как» выполнил команду startapp. После того как я удалил запись в списке, я смог создать приложение.
источник
Я решил эту проблему, используя вместо этого команду «django-admin»:
django-admin startproject _project_name
просто удалите ".py", прикрепленный к "django-admin"
источник
Вызов приложения
site
может воспроизвести эту проблему либо.источник
Я получил это из-за того, что забыл, что установил Django, используя его
pip -U
, поэтому он был доступен только пользователю, запустившему мое приложение Django. Для запуска manage.py мне пришлось сделатьисточник
все вы, ребята, не упомянули случай, когда кто-то "как я" установит django перед установкой virtualenv ... так что для всех людей моего рода, если вы это сделаете ... переустановите django после активации virtualenv..i надеюсь это поможет
источник