Нет модуля с именем django.core

Я обновил до последней версии Django 1.0.2 после удаления моей старой версии Django. Но теперь, когда я запускаю django-admin.py, я получаю следующую ошибку. Как я могу это решить?

Traceback (most recent call last):
  File "C:\Python25\Lib\site-packages\django\bin\django-admin.py", line 2, in <module>
    from django.core import management
ImportError: No module named django.core

Ответ 1

Вы должны убедиться, что django находится в вашем PYTHONPATH.

Чтобы проверить, просто выполните import django из оболочки python. Не должно быть выхода:

ActivePython 2.5.1.1 (ActiveState Software Inc.) based on
Python 2.5.1 (r251:54863, May  1 2007, 17:47:05) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>>

Если вы установили django через setuptools (easy_install или с помощью setup.py, включенного в django), тогда проверьте site-packages, если файл .pth (easy-install.pth, django.pth,...) укажите правильную папку.

Е.И.В..

Ответ 2

У меня такая же проблема для Windows, и, похоже, я нашел проблему. У меня установлены как 2.7, так и 3.x. Кажется, что это связано с ассоциированной программой .py:

В командной строке:

assoc.py

и результат:

.py = Python.File

что означает .py связано с Python.File

то я попробовал это:

ftype Python.File

Я получил:

Python.File = "C:\Python32\python.exe" "% 1" % *

что означает, что в командной строке .py связан с моей установкой Python 3.2 - и поэтому я не могу просто набрать "django-admin.py blah blah" для использования django.

ВСЕ, что вам нужно сделать, это изменить ассоциацию:

ftype Python.File = "C:\Python27\python.exe" "% 1" % *

тогда все в порядке!

Ответ 3

Вы можете обойти эту проблему, предоставив полный путь к файлу django-admin.py

python c:\python25\scripts\django-admin.py startproject mysite

Ответ 4

Сегодня я столкнулся с этой проблемой, оказалось, что у меня был C:\Python26 на моем пути, и .py файлы были связаны с Python 3.1. Восстановление правильной версии Python с помощью программ и функций или путем запуска .msi будет исправлять ассоциации.

Ответ 5

Это была проблема переменной среды PYTHONPATH для меня, как и другие, упомянутые выше, но никто не показал, как установить ее для людей, которые могли бы использовать дополнительную инструкцию.

Linux (bash)

Я установил эту переменную в мой файл bashrc в моей домашней папке (.bashrc - это файл для меня, так как моя оболочка есть /bin/ bash).

vim ~/.bashrc
export PYTHONPATH=/usr/local/python-2.7.2/lib/python2.7/site-packages:$PYTHONPATH
source ~/.bashrc

Путь должен быть где бы ни находился источник django. Mine находится по адресу /usr/local/python -2.7.2/lib/python2.7/site-packages/django, поэтому я просто указал /usr/local/python -2.7.2/lib/python2.7/site- пакеты без части django.

OSX

В OSX путь /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages, и вы можете добавить его в /etc/profile:

sudo echo "PYTHONPATH=/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages:$PYTHONPATH" >> /etc/profile
source /etc/profile

Ответ 6

Я уверен, что это связано с чем-то неправильным в моей настройке, но у меня такая же проблема, и она работает правильно, если я так называю это

c:\somedir>python c:\Python26\scripts\django-admin.py startproject mysite

Ответ 7

Если вы используете Windows, то не запускайте его с помощью 'django-admin.py', так как это вызовет ваш внешний python.exe для выполнения и не сможет прочитать в django внутри виртуальной среды. Попробуйте "python django-admin.py", чтобы использовать ваш python.exe внутри вашей среды.

Ответ 8

Это сработало для меня с битнами djangostack:

python apps\django\django\bin\django-admin.py startproject mysite

Ответ 9

У меня была такая же проблема в windows xp. Причина в том, что я установил несколько версий python (2.6.3.2).windows PATH правильно установлен на python26, но .py файл связан с python32. Я хочу, чтобы файл .py был связан с python26.Чтобы решить эту проблему, простой способ - щелкнуть правой кнопкой мыши по *.py(например, django-admin.py), выбрать "открыть с" → "выбрать программу..." → "Browse..." (выберите c:\python26\python.ext) → "Ok". Затем мы можем запустить django-admin.py в cmd без необходимости расширительного префикса "c:\python26\lib\site-packages\django\bin".

Ответ 10

У меня была такая же проблема и напомнил, что я установил iPython вчера днем. Я удалил iPython, и проблема исчезла. Кстати, я работаю с virtualenv. Я установил iPython в общесистемный каталог сайтов-пакетов, поэтому я просто переустановил iPython внутри каждого виртуального файла, который я использую. После установки iPython вчера я заметил предупреждение (начиная с версии 0.13 iPython), что обнаружил, что я использую virtualenv, и что если у меня возникнут какие-либо проблемы, я должен установить iPyton внутри каждого виртуального файла.

Ответ 11

Если ваши переменные пути верны и из оболочки python вы можете сделать: из управления импортом django.core убедитесь, что вы включили "python" перед "django-admin.py" как таковой: python django-admin. py startproject thelittlethings

Ответ 12

Простейшим решением, хотя и не самым элегантным, является копирование django-admin.py из папки Scripts. Папка Scripts будет найдена под вашей установкой Python. На моем компьютере он находится в C:\Python26\Scripts. Затем вставьте django-admin.py в папку, из которой вы пытаетесь запустить файл. Это правда, что использование системного пути даст гибкость. Это особое решение, если вы спешите. Затем введите, например, python django-admin.py startproject fluffyteaspoons, и вы создадите проект fluffyteaspoons

Ответ 13

В моем случае я на OS X Lion, и я установил Python с homebrew Я получал ту же ошибку, но ни одно из решений, опубликованных здесь, не помогло мне. В моем случае мне просто пришлось отредактировать script:

vim /usr/local/share/python/django-admin.py

И я заметил, что первая строка была неправильной, поскольку она указывала на установку системы python:

#!/usr/bin/python

Я только что изменил его, чтобы указать на домашнюю установку:

#!/usr/local/bin/python

И это сработало:)

Ответ 14

Я знаю, что это старый вопрос, но у меня была такая же проблема, в моем случае это связано с тем, что я использую virtualenv с django, но .py расширения файлов в Windows связаны с основной установкой Python, поэтому запуск django-admin.py осуществляется непосредственно из командной строки, заставляя ее запускаться с основным Установка Python без установки django.

Итак, поскольку я не знаю, есть ли в Windows какой-либо эквивалент хэша-фунта, я работал над этим, запустив python, за которым следует полный путь django-admin.py, или вы также можете изменить пакет virtualenv script изменить ассоциации файлов и изменить их обратно при его деактивации (хотя я не уверен, как это сделать, поскольку я не очень хорошо знаком с пакетом script).

Надеюсь, что это поможет,

Ответ 15

Это работало на Mac OS X

В терминальном запуске python В python: import sys print sys.path

Найдите путь пакетов сайтов. Я нашел это в выводе sys.path: '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages'

выйти из python. Найдите, где находятся ваши текущие пакеты сайтов. Мои были в /Library/Python/ 2.6/site-packages

Теперь будьте осторожны: проверьте содержимое сайтов-пакетов, чтобы убедиться, что он пуст. То есть каталог /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages должен быть пустым или содержать файл readme. Если это так, удалите этот каталог, потому что теперь вы собираетесь создать символическую ссылку.

ln -s/Library/Python/2.6/site-packages/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

Если вы не удалите папку, вы поместите символическую ссылку в папку.

Другие параметры - добавить путь к sys.path. Я выбрал символический маршрут, потому что у меня есть несколько версий python, я не хочу несколько версий Django и просто хочу указать на известную рабочую копию.

Ответ 16

Я только что получил тот же ImportError в Windows Vista, у которого установлены Python 2.7 и 3.2, и используя virualenv с Python 2.7 и Django 1.4.3.

Я изменил ассоциацию файлов .py файлов в проводнике с 3.2 до 2.7. Щелкните правой кнопкой мыши файл .py и измените настройки. У меня все еще есть ImportError.

Я запустил cmd.exe в качестве администратора и скопировал предыдущий материал ftype. После ошибки отметим, что двойные кавычки не копируются правильно из браузера в cmd. Переписал команду в cmd, но у меня все еще есть ImportError.

В корне активированной виртуальной среды я явно дал команду python и путь к django-admin.py оттуда. (env_p27) C:\Users\Gemmu\env_p27>python .\Scripts\django-admin.py startproject mysite

Это сработало.

Спасибо за помощь всем.

Ответ 17

Это случилось со мной, потому что я запускал pip как sudo, в то время как мой virtualenv настроен так, чтобы не импортировать пакеты внешних сайтов, поэтому Django был установлен для пользователя root, но не в virtualenv, хотя я активировал virtualenv, когда я побежал sudo.

Решение переключиться на root, активировать venv, а затем установить pip.

Ответ 18

Как обычно, установить script не удалось установить права на чтение/выполнение в мире:) Сделайте это:

sudo find  /usr/lib/python2.5/site-packages/django -type d -exec chmod go+rx {} \;
sudo find  /usr/lib/python2.5/site-packages/django -type f -exec chmod go+r {} \;

Ответ 19

Спасибо за сообщение вопроса и ответов. У меня есть две версии Python, но root указывает на версию /usr/bin, и я хотел использовать версию Python версии 2.7 в каталоге /usr/local/bin. После восстановления/переустановки Django и mysqldb все хорошо, и я не получаю ошибку.

Ответ 20

Небольшое быстрое исправление - это просто создать символическую ссылку ln -s $SOMEWHERE/lib/python2.6/site-packages/django/ ./django

Ответ 21

У меня была та же проблема, было ясно, что у меня проблема с конфигурацией PYTHONPATH. Решение довольно просто, просто создайте файл с этим именем django.pth в каталоге PYTHONHOME\Lib\site-packages, где PYTHONHOME - это каталог, в котором установлен Python (мой: C:\Python27). Добавьте следующую строку в файл django.pth:

PYTHONHOME\Lib\site-packages\django

Конечно, вы должны изменить PYTHONHOME на свой каталог установки Python, как я объяснил.

Обратите внимание, что вы можете редактировать django.pth, чтобы включить любой каталог, который вы хотите включить в PYTHONPATH. Фактически вы можете назвать этот файл по своему желанию, path.pth, например, если вы хотите, чтобы он был более общим и включал несколько путей к каталогам.

Ответ 22

Хорошо.. Я делаю что-то радикальное. Я unistall python и я удаляю из среды Variables/PATH this: ;C:\Python26\Scripts;C:\Python26. И его работа... Раньше у меня была ваша проблема.

Ответ 23

Я понял, что это произошло, потому что я не запускал python setup.py install. Это настройка среды.

Ответ 24

Чтобы понять, что lichenbo сказал... Если вы используете Windows, то не запускайте его с помощью 'django-admin.py'..

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

(DjangoEnv)  C:\users\timreilly\Envs\django\Scripts\django-admin.exe startproject myproject

DjangoEnv - это имя моей виртуальной среды.

Ответ 25

Прочитав много, я нашел решение, которое работает для меня.

У меня

 django version 1.9.2
  • Задайте всю системную переменную в "пути". Не дублируйте копию в пользовательской переменной, а также в PYTHONPATH. введите описание изображения здесь

  • Затем установите значение в regedit

введите описание изображения здесь

  1. сделал virtualenv в желаемой папке командой

    virtualenv VENV

  2. И, наконец, в cmd

команда

django-admin.py startproject MySite

***and not this***

python django-admin.py startproject MySite 

в корневой папке "VENV"

И он работал