2014-09-12 2 views
3

Я пытаюсь установить django, но я не уверен, как действовать дальше. Я думаю, что я установил django, но python python, похоже, не может использовать пакет.Установлен Django с Pip, но Python не может найти его

$ sudo pip install django 
Requirement already satisfied (use --upgrade to upgrade): django in /usr/local/lib/python2.7/site-packages 
Cleaning up... 

$ python -c "import sys; sys.path = sys.path[1:]; import django; print(django.__path__)" 
Traceback (most recent call last): 
    File "<string>", line 1, in <module> 
ImportError: No module named django 

Как исправить это? Когда я пытаюсь запустить сервер я получаю эту ошибку

$ python manage.py runserver 
Traceback (most recent call last): 
    File "manage.py", line 8, in <module> 
    from django.core.management import execute_from_command_line 
ImportError: No module named django.core.management 
+0

Вы создали виртуальную среду ('virtualenv') для вашей установки django? – Leistungsabfall

+0

нет, я просто использую систему python –

ответ

1

Ваш pip использует другую версию Python, чем ваш python. Проверьте выходные данные этих команд:

pip -V 
python -V 
python -c 'import sys; print(sys.path)' 

В вашей системе может быть несколько версий Python и Pip. Например, в Bash оболочке, если вы наберете python + Вкладки несколько раз он покажет вам доступные бинарные файлы Python на вашем пути, например, python2.7python3.4, а так же для pip + Tab тоже.

Это зависит от вашей системы, как правильно настроить так, чтобы и python, и pip использовали одни и те же версии.

Лучше всего использовать virtualenv. У вас не было бы таких проблем, как в virtualenv, ваша версия Python и версия Pip были бы хорошо синхронизированы.

Судя по выходу команды, pip использует Python 2.7. Одно быстрое решение может быть попробовать запустить Django так:

python2.7 manage.py runserver 

Или запустить версию pip, соответствующую вашей версии Python по умолчанию.

Это «быстрое исправление» - это грязное исправление. Было бы лучше использовать virtualenv.

+0

'pip -V' pip 1.5.6 из /usr/local/Cellar/python/2.7.8_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ site-packages/pip-1.5.6-py2.7.egg (python 2.7) 'python -c 'import sys; print (sys.executable) '' /usr/bin/python –

+0

Хорошо также запустите это:' python -c' import sys; print (sys.path) '' – janos

+0

А, хорошо, когда я смотрю на источник pip' vim/usr/local/bin/pip', я вижу '#!/usr/local/opt/python/bin/python2.7 ', но мой python:/usr/bin/python –

Смежные вопросы