#python #django
#python #django
Вопрос:
Я немного смущен тем, что происходит с запуском моих приложений django. Когда я использую команду python manage.py runserver
, я не получаю соответствующего ответа от сервера. Однако, когда я использую python2.6 manage.py runserver
сервер, он действительно запускается.
Может ли кто-нибудь помочь мне с этой путаницей, а также подсказать мне, как я могу упростить эту проблему? В идеале я не хочу разные версии python и хочу иметь возможность вводить только python manage.py runserver
Комментарии:
1. Похоже, у вас установлено два python. Попробуйте
python -V
посмотреть, какая версияpython
.2. там написано «Python 2.6.1». Однако, есть ли у вас предложение по решению проблемы, описанной выше? Я хотел бы иметь возможность вводить только одну вещь для запуска django.
3. Требуется больше деталей. Я бы ожидал, что python2.6 будет запускать python 2.6.1, если у вас нет новой версии 2.6. Итак, подтвердите, что установлены две версии. Если есть, либо решите жить с использованием
python2.6
, либо установите свой путь так, чтобы тот, который работает, находился в пути — это зависит от ОС. Увы, я собираюсь ненадолго оставить клавиатуру, поэтому в ближайшее время не смогу оказать дополнительную помощь.
Ответ №1:
ДА. Это довольно распространенное явление. Вы можете узнать местоположение исполняемого файла с which
помощью и разрешить символические ссылки с ls
помощью .
$ ls -l `какой python` lrwxrwxrwx 1 root root 9 июля 13 18:50 /usr/bin/python -> python2.6 $ ls -l `какой python3' lrwxrwxrwx 1 root root 9 июля 27 22:24 /usr/bin/python3 -> python3.1
В Debian и некоторых других системах может потребоваться разрешить несколько символических ссылок.
$ ls -l `какой nc` lrwxrwxrwx 1 root root 20 октября 7 15:16 /bin/nc -> /etc/alternatives/nc $ ls -l /etc/alternatives/nc lrwxrwxrwx 1 root root 15 октября 7 15:16 /etc/alternatives/nc -> /bin/nc.openbsd
Если вы хотите только ввести python
и получить нужную версию, создайте псевдоним. Добавьте строку в свой .bashrc
файл (или где бы вы ни хранили такие строки):
alias python=python2.6
Обратите внимание, что это не повлияет на скрипты: если вы запустите «python» в скрипте, он получит старую версию, а не псевдоним. Псевдонимы предназначены только для интерактивного использования.
Ответ №2:
Да, возможно иметь две версии python. Самый простой способ, который я нашел для python
выполнения python2.6
(не нарушая другую версию для кого-либо еще), — это использовать псевдоним. Для этого просто отредактируйте следующее и добавьте его в свой ~/.profile
файл:
alias python=/path/to/your/python2.6
Выйдите из системы и снова войдите, и при запуске python
он должен выполнить правильный двоичный файл. Если вы хотите вернуться назад, просто удалите эту строку из своего ~/.profile
.
Ответ №3:
Да, у вас может быть несколько версий Python, расположенных рядом на вашем компьютере.
Похоже python
, что на вашем хосте символически связана с версией, отличной от python2.6
. Вы можете узнать эту версию, выполнив:
python --version
…или…
python -V
… если это не сработает.
Установка версии Python по умолчанию зависит от того, как вы установили Python в первую очередь.
Для Mac OS X см. раздел Как я могу изменить версию Python по умолчанию в Snow Leopard?
Комментарии:
1. У вас есть предложения о том, как я могу просто получить одну версию python для запуска django?
2.
python --version
не работает на некоторых старых питонах, поэтому я предложил-V
флаг в своем комментарии к вопросу.3. @cfarm54: Смотрите superuser.com/questions/35256 /…