1.2. Проект Django
Создание и активация виртуальной среды
Виртуальные среды не являются неотъемлемой частью разработки на Django, однако их рекомендуется использовать, так как они позволяют разграничить пакеты для каждого проекта.
К примеру, если после создания первого приложения выйдет новая версия Django и мы захотим использовать для второго проекта новую версию Django, то из-за глобальной установки пакетов придется обновлять первый проект, который использует старую версию. Это потребует некоторой дополнительной работы по обновлению, так как не всегда соблюдается обратная совместимость между пакетами. Если мы решим использовать для второго проекта старую версию, то мы лишаемся потенциальных преимуществ новой версии.
Если вы хотите установить пакеты глобально, то перейдите к следующей части. Подробнее о виртуальных средах вне контекста Django можно прочесть на странице виртуальных сред.
Итак, откроем консоль и последовательно введем следующие команды:
Первая команда создаст на рабочем столе папку firstsite
и перейдет в неё. Вторая – создаст в ней виртуальную среду env
. Третья – активирует эту виртуальную среду. Обратите внимание на появившийся префикс (env)
в консоли. Он служит индикатором того, что виртуальная среда активна и все пакеты проекта будут устанавливаться в неё, а не глобально.
Если вы закрыли консоль и хотите вновь запустить проект из-под виртуальной среды, вам нужно будет перейти в папку проекта в консоли и активировать виртуальную среду:
Установка фреймворка
Для установки Django введем в консоли следующую команду:
Помимо Django, будут установлены необходимые фреймворку для работы библиотеки:
pytz
– обрабатывает временные отметки — комбинации даты и времени;sqlparse
– служит для разбора SQL-кода;asgiref
– реализует интерфейс ASGI, посредством которого эксплуатационный веб-сервер взаимодействует с сайтом, написанным на Django
Спустя некоторое время установка закончится, о чем pip
нам сообщит:
Теперь мы можем начинать разработку нашего первого веб-сайта.
Проект Django
Первое, что нам нужно сделать, — создать новый проект. Проектом называется совокупность всего программного кода, составляющего разрабатываемый сайт.
Физически он представляет собой папку, в которой находятся папки и файлы с исходным кодом (назовем ее папкой проекта).
Создадим новый пустой проект Django, которому дадим имя firstesite
. Для этого в запущенной ранее командной строке введем команду:
Если вы не создавали виртуальную среду, то уберите точку в конце команды. В этом случае не будет использоваться текущая директория в качестве папки проекта, а создастся новая с именем /firstsite
Утилита django-admin
служит для выполнения разнообразных административных задач. В частности, команда startproject
указывает ей создать новый проект с именем, записанным после этой команды.
В папке будет создана следующая структура файлов и папок:
Внешняя папка firstsite
— это папка проекта со следующим содержимым:
manage.py
— программный файл с кодом одноименной служебной утилиты, выполняющей различные действия над проектом;внутренняя папка
firstsite
— пакет языка Python, содержащий модули, которые относятся к проекту целиком и задают его конфигурацию. Назовем данную папку пакетом конфигурации.
Пакет конфигурации включает в себя такие модули:
init.py
— пустой файл, сообщающий Python, что папка, в которой он находится, является полноценным пакетом;settings.py
— модуль с настройками самого проекта. Включает описание конфигурации базы данных проекта, пути ключевых папок, важные параметры, связанные с безопасностью и т.д.;urls.py
— модуль с маршрутами уровня проекта;wsgi.py
— модуль, связывающий проект с веб-сервером посредством интерфейса WSGI;asgi.py
(начиная с Django 3.0) — модуль, связывающий проект с веб-сервером через интерфейс ASGI.
Модули wsgi.py
и asgi.py
используются при публикации готового сайта в Интернете.
Не стоит переименовывать внешнюю и внутреннюю папки проекта. В первом случае придется вновь создавать и настраивать виртуальную среду, а во втором случае придется вносить правки в исходный код
Еще раз отметим, что пакет конфигурации хранит настройки, относящиеся к самому проекту и влияющие на все приложения (см. следующую тему), которые входят в состав этого проекта. Проект Django мы можем поместить в любое место файловой системы компьютера.
Запуск созданного проекта
В состав Django входит отладочный веб-сервер, написанный на Python. Чтобы запустить его, следует в командной строке перейти в папку проекта (которая внешняя) и отдать команду:
Здесь мы пользуемся уже утилитой manage.py
, сгенерированной программой django-admin
при создании проекта. Команда runserver
, которую мы записали после имени этой утилиты, как раз и запускает отладочный веб-сервер.
Последний выдаст сообщение о том, что сайт успешно запущен (если его код не содержит ошибок) и доступен по интернет-адресу http://127.0.0.1:8000/ (или http://localhost:8000/). Как видим, отладочный сервер по умолчанию работает через TCP-порт 8000 (при необходимости можно использовать другой порт).
Запустим веб-обозреватель и наберем в нем один из интернет-адресов нашего сайта. Мы увидим информационную страничку, предоставленную самим Django и сообщающую, что сайт, хоть еще и "пуст", но в целом работает. Для остановки отладочного веб-сервера достаточно нажать комбинацию клавиш CTRL+C
Last updated