Я установил Django с помощью этой команды:
sudo apt-get install python-django
И он установил версию 1.5.4-1ubuntu1. В документации Django говорится, что начиная с версии 1.5 Django поддерживает Python 3. Тем не менее, когда я запускаю интерпретатор python 3 и пытаюсь импортировать Django, он говорит, что такого модуля нет. Я пытался найти версию Django на python3, но такого пакета не существует. Как я могу заставить django работать на python3? Я бы предпочел использовать пакеты Ubuntu вместо установки вещей вручную.
Ответы:
Я настоятельно рекомендую избегать
pip3
установки вещей в системные пакеты сайта. Я приводил эти аргументы раньше, но я дам вам заметки:Я настоятельно рекомендую использовать
virtualenv
. Это огромная боль в том, чтобы начать работу, но как только вы ее настроите, у вас будет полная среда Python под вашим полным контролем. Это означает больше работы (вам придется проверять наличие обновлений,pip
но пока вам это не поможет), но вам не нужно беспокоиться о том, что делает Ubuntu.У меня есть среда для каждого сайта (просто сидя в подкаталоге называется
venv
). Некоторые люди, включая меня, когда-то давно, предпочитают делить свою среду между несколькими сайтами. Я обнаружил, что это проще поддерживать с точки зрения выпуска обновлений, но некоторые сайты могут быть хрупкими или требовать старых версий, и это сдерживает всю среду. YMMV.С точки зрения установки этого, и просто чтобы дать мне пощечину,
virtualenv
еще не упакован для Python 3, поэтому мы должны использоватьpip3
:Теперь вашему bash PS1 нужно предварять,
(myenv)
чтобы вы знали, что находитесь в другой среде. Мы можем протестировать среду, чтобы убедиться, что мы находимся на правильных версиях вещей (не используя системные версии для начинающих):И тогда вы можете просто продолжать, как если бы вы были хозяином вселенной. Вам больше не нужен root
pip
, и вам не нужно указыватьpip3
. Это намного более дружелюбно.Если вы используете что-то подобное
uwsgi
для размещения этого (вы должны), используйте его флаг -H (или аргумент home config), чтобы сообщить ему, где находится среда Python.Что касается упрощения разработки, вы можете автоматически «монтировать» свою
virtualenv
среду. Есть много сценариев, но этот мой (он живет внизу моего~/.bashrc
:Всякий раз, когда я вхожу
cd
в/web
(где хранятся все мои веб-сайты разработки), он устанавливает для меня virtualenv. Обратите внимание, что у меня есть только одна среда для всех моих сайтов, поэтому она подойдет вам только в том случае, если вы делаете что-то подобное. Есть много других способов сделать подобные вещи .источник
Я понял, как это сделать
pip
. Оказывается, мне нужноpip3
:сделал свое дело.
Вам может понадобиться получить pip3:
источник
Django для Python3 был добавлен недавно. Так что просто введите в терминале:
apt-get install python3-django
источник
E: Unable to locate package python3-django
Ребята, есть простой способ использовать virtualenvwrapper , безусловно, самый простой для управления виртуальными средами Python 2.7 / 3.x в Ubuntu / Debian.
При желании можно
--system-site-packages
повторно использовать глобальные пакеты сайта.virtualenv устанавливает pip и другие инструменты настройки python, чтобы помочь нам быстрее начать работу.
источник