Как установить Django

Этот документ призван проинструктировать вас о том, как получить и запустить Django.

Установка Python

Изначально написанный на Python, Web-фреймворк Django требует установки самого Python. Подробности смотрите в Какие версии Python можно использовать с Django?.

Последнюю версию Python можно скачать на https://www.python.org/download/ или используя пакетный менеджер вашей операционной системы.

Django на Jython

Если вы используете Jython (реализация языка Python на языке Java), вам необходимо пройти несколько дополнительных шагов. См. Запускаем Django на Jython для получения более подробной информации.

Python на Windows

Если вы только начали изучать Django и используете Windows, советуем почитать How to install Django on Windows.

Установка Apache и mod_wsgi

Если вы просто хотите поэкспериментировать с Django, пропустите этот раздел и перейдите к следующему; Django включает в себя легковесный web-сервер, предназначенный для тестирования, поэтому вы вправе не устанавливать Apache до тех пор, пока ваш проект не будет готов для развёртывания на “боевом”-сервере.

Если вам нужно использовать Django на публичном, производственном сайте, используйте Apache и mod_wsgi ; mod_wsgi может работать в одном из двух режимов: во встроенном режиме и в режиме демона. Во встроенном режиме mod_wsgi очень похож на mod_perl – он “встраивает” Python в Apache и загружает код Python в память при запуске сервера. Код остаётся в памяти в течение жизни процесса Apache, что даёт значительный рост производительности по сравнению с другими механизмами. В режиме демона mod_wsgi порождает независимый процесс-демон, который обрабатывает запросы. Процесс-демон может работать от имени различных пользователей Web-сервера, что может весьма повысить уровень безопасности. Кроме того, процесс-демон может быть перезапущен без останова и перезапуска самого Apache. Обратитесь к документации mod_wsgi, чтобы определить какой режим подходит вам в большей степени. Убедитесь, что Apache установлен и модуль mod_wsgi активирован. Django будет работать с любой версией Apache, которая имеет поддержку mod_wsgi.

См. Использование Django и mod_wsgi для получения информации о настройке mod_wsgi сразу после того, как он будет установлен.

Если по какой-либо причине вы не можете использовать mod_wsgi, не волнуйтесь: Django поддерживает множество других вариантов развёртывания. Один из них – uWSGI; он отлично работает с nginx . Дополнительно Django следует WSGI спецификации (PEP 3333), которая позволяет ему работать на различных серверных платформах.

Создание рабочей базы данных

Если вы планируете использовать функционал API баз данных Django, вам нужно удостовериться, что сервер баз данных запущен. Django поддерживает много различных СУБД. В частности к ним относятся PostgreSQL, MySQL, Oracle и SQLite.

Если вы заняты разработкой простого проекта или чего-то, что вы не планируете развернуть в производственной среде, SQLite в целом является наипростейшим вариантом, поскольку он вообще не требует установки отдельного веб-сервера. Однако, SQLite очень отличается от других баз данных, поэтому, если вы работаете над чем-то существенным, рекомендуется выбрать ту же базу данных, которая будет использована на “боевом” сервере.

В дополнение к официально поддерживаемым базам данных есть бэкэнды, поставляемые третьими сторонами, которые позволяют использовать другие БД с Django.

В дополнение к установке необходимой БД вы также должны убедиться, что вами выбран и установлен соответствующий модуль Python.

  • При использовании PostgreSQL вам понадобится пакет psycopg2. Вы можете обратиться к заметкам о PostgreSQL для получения дальнейших инструкций, специфичных для этой БД.

  • При использовании MySQL вам понадобится DB API драйвер, такой как mysqlclient. Обратитесь к заметкам о MySQL для информации.

  • Если вы используете SQLite, вам следует прочитать про особенности использования SQLite.

  • При использовании Oracle вам понадобится копия cx_Oracle, но, пожалуйста, обязательно ознакомьтесь с заметками для Oracle , которая содержит информацию о поддерживаемых версиях Oracle и cx_Oracle.

  • При использовании неофициальных бэкендов от сторонних разработчиков смотрите соответствующую документацию о дополнительных требованиях.

Если вы планируете использовать команду manage.py migrate для автоматической генерации таблиц БД для ваших моделей (после первого запуска Django и создания проекта), вам нужно убедиться, что Django имеет разрешение на создание и изменение таблиц БД; если же вы хотите создавать таблицы вручную, вам надо просто предоставить Django разрешения SELECT, INSERT, UPDATE и DELETE. После создания пользователя БД с указанными привилегиями, вам понадобится изменить настройки вашего проекта, см. DATABASES.

Если вы используете среду тестирования Django для проверки запросов к базе данных, Django понадобится разрешение на создание тестовой БД.

Удаление предыдущей версии Django

Вам нужно полностью удалить предыдущую версию Django перед установкой новой версии.

В случае, если Django предварительно установлен с помощью pip или easy_install, вам не понадобится удалять предыдущую версию вручную: просто запустите pip или easy_install снова, это приведёт к обновлению текущей версии на более новую.

В случае, если вы устанавливали Django, используя python setup.py install, его удаление будет заключаться в удалении самой директории django из site-packages. Чтобы найти нужную директорию вы должны запустить следующую команду в командной оболочке (не в интерактивной оболочке Python):

$ python -c "import django; print(django.__path__)"

Установка Django

Инструкции по установке несколько различаются в зависимости от того, каким способом вы устанавливаете пакет: установка для конкретного дистрибутива, загрузка последней официальной версии или получение текущей разрабатываемой версии.

Это просто, независимо от того, какой вариант будет вами выбран.

Установка официальной версии с помощью pip

Это рекомендуемый способ установки Django.

  1. Установите pip. Самым простым способом сделать это является использование автономного установщика pip. Если ваш дистрибутив уже включает установленную версию pip, возможно, вам потребуется обновить её до более свежей. (Если версия устарела, вы сразу поймёте это, поскольку установка не будет работать. Также обратите внимание на безвредные SyntaxErrors.)

  2. Взгляните на virtualenv и virtualenvwrapper. Эти программы предоставляют изолированное окружение Python, что намного более практично, чем установка общесистемных пакетов. Такой подход также позволяет провести установку без административных прав. Раздел о разработке Django описывает как создать виртуальное окружение для Python 3.

  3. После того, как вы создали и активировали виртуальное окружение, выполните в консоли pip install Django.

Установка пакета для конкретного дистрибутива

Проверьте наличие готового пакета, если ваша операционная система предоставляет возможность получить пакет/установщик Django. Как правило, этот способ удобен автоматическим разрешением зависимостей и обновлением версии Django. Однако эти пакеты редко содержат последний релиз Django.

Установка разрабатываемой версии

Следим за разработкой Django

Если вы приняли решение использовать текущую разрабатываемую версию Django, вам нужно следить за информацией о выпуске новых исправлений на the development timeline. Это поможет вам оставаться в курсе происходящих изменений , таких как включение новой функциональности. Для получения изменений вы должны будете обновить вашу копию Django. (Для стабильных релизов, все необходимые изменения описаны в примечаниях к выпуску.)

Если вы хотите обновить Django до разрабатываемой версии, чтобы иметь возможность использовать последние, возможно, нестабильные изменения и улучшения, следуйте этой инструкции:

  1. Убедитесь, что у вас установлен Git и вы можете запустить его из командной оболочки. (Введите git help в командной оболочке, чтобы проверить это.)

  2. Склонируйте разрабатываемую ветку Django вот так:

    $ git clone git://github.com/django/django.git
    

    Эта команда создаст каталог django в вашей текущей директории.

  3. Убедитесь, что интерпретатор Python может загрузить код Django. Самый удобный способ сделать это – использовать virtualenv, virtualenvwrapper и pip. Раздел о разработке Django описывает как создать виртуальное окружение для Python 3.

  4. После того, как вы создали и активировали виртуальное окружение, выполните в консоли:

    $ pip install -e django/
    

    Это сделает код Django импортируемым, а также сделает доступным запуск django-admin.py. Иначе говоря, всё готово!

Когда вам понадобится обновить вашу копию Django, просто запустите команду git pull в директории django.После того, как вы сделаете это, Git автоматически загрузит изменения.