Создание сайта на Python/Django: установка Django и создание проекта

В прошлой публикации на тему Создание сайта на Python-Django: руководство к старту разработки я начал с того, почему данная связка технологий является удачной и перспективной в применении, а так же описал 3 простых шага для подготовки к старту изготовления сайта с использованием языка программирования Python и веб-фреймворка Django. Теперь, когда мы готовы к старту разработки сайта переходим к первым шагам на пути запуска своего первого сайта на Python/Django. Для это запускаем установленную ранее IDE PyCharm Community Edition и приступаем к созданию сайта. Существует и платная профессиональная версия данной IDE с расширенными возможностями по автоматизации процессов разработки, но для новичков вполне достаточно и бесплатного варианта. Выполнение ряда функций вручную поможет лучше понять процессы, происходящие при разработке сайта на Python.

PyCharm Community Edition Logo

Установка и настройка среды разработки Python/Django

На этом этапе мы видим перед собой приветственное окно приложения с предложением создать новый проект, открыть существующий или же импортировать из системы контроля версий. Нас же пока интересует первый пункт – Create New Project. Нажимаем его и переходим в созданию нового проекта.

PyCharm Community Edition Welcome Screen

Теперь нам необходимо задать имя нового проекта и выбрать местоположение. Название всегда лучше выбирать такое, чтобы в будущем, когда вы будете работать с несколькими проектами и периодически возвращаться к доработке предыдущих вам было легче ориентироваться и понимать где какой проект хранится.

Задаем имя проекта и выбираем интерпретатор

Вторая строчка Interpreter отвечает за выбор установленного в системе интерпретатора языка Python. Их может быть несколько, но пока мы не будем вдаваться в нюансы. Сразу отмечу, что для каждого проекта лучше создавать отдельную виртуальную среду (VirtualEnv), которая будет содержать установленные модули, необходимые для конкретного проекта и их настройки и версии не будут влиять на другие проекты. Давайте создадим новую VirtualEnv нажав на шестеренке справа и выбрав пункт Create VirtualEnv.

Создаем VirtualEnv

Для VirtualEnv так же необходимо задать имя, выбрать расположение в файловой системе и версию интерпретатора Python, которая будет использоваться. Я предпочитаю виртуальной среде давать имена аналогичные проекту, чтобы так же легко можно было разобраться для какого проекта она была создана.

Задаем имя, расположением и интерпретатор виртуальной среды

Нажимаем ОК и ждем пока закончится процесс создания виртуальной среды. После нажимаем на кнопку Create внизу справа и запускаем процесс создания проекта.

Подготовка виртуальной среды разработки VirtualEnv

Далее откроется окошко среды разработки, которое сигнализирует о том, что проект создан и теперь мы может переходить к разработке сайта на Django.

Проект создан и готов к работе

Для дальнейших манипуляций открываем Терминал, нажав на кнопку внизу слева.

Открываем терминал

Установка Django

В командной строке терминала мы будем задавать команды для установки самого фреймворка Django и дальнейшей его настройки. Для этого вводим следующую команду.

pip install Django

Данная команда установит все необходимые компоненты для обеспечения работоспособности Django и возможности его использования в проекте. В завершении мы должны увидеть что-то подобное и последнюю строчку со словами Successfully installed… означающие успешную установку.

Результат установки Django

Теперь web-framework Django можно использовать в проекте и мы переходим к процессу создания первого Django приложения.

Создаем проект на Django

На этом этапе мы выполним команду, которая создаст проект на Django внутри нашего проекта на Python.

django-admin startproject mysite
Результат выполнения команды создания проекта Django

В результате мы получим каталог внутри проекта с именем mysite, который будет содержать файлы настроек проекта. Внутри первого каталога будет еще один каталог с идентичным названием. Обратите внимание, что первый каталог – это всего лишь контейнер проекта на Django. Его имя можно назвать или переименовать на ваше усмотрение. Второй же каталог содержит файлы проекта, фактически это т.н. Python-пакет. Файлы созданные внутри него содержат базовые настройки сайта на Django.

Для удобства работы с проектом, на этом этапе рекомендую переместить содержимое второй папки mysite в первую, а файл manage.py в корень проекта. Это облегчит работу с проектом и не будет требовать от нас входить каждый раз когда открываем терминал внутрь первого каталога mysite. В результате структра проекта должна быть примерно следующей: 

Фактически, в данный момент проект может быть запущен на сервере разработки и он будет работать. Для этого можно запустить команду из терминала

python manage.py runserver

Правда наш сайт ничего пока не содержит и будет выдавать вот такую информацию.

image

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

А пока все! До новых встреч и удачи в создании сайта на Django!

9 комментариев

  1. Дима:

    В каком месте вы выполнили команду django-admin startproject mysite ?

    • DevOsa:

      Все команды выполняются в консоли. Команда django-admin становится доступной после установки пакета Django в рабочей среде venv.

  2. Куандык:

    Спасибо огромное

  3. влад:

    как поместить manage.py в корень?

    • IgorOsa:

      Переместить вместе со всеми подкаталогами в корень проекта. Все должно работать.

  4. Oruzar:

    кто нибудь объясните как появилась папка: .venv library root?

    • IgorOsa:

      venv хранит виртуальную среду для установки зависимостей текущего проекта, чтобы не ставить их глобально и не ломать зависимости в других проектах…
      library и root могла добавить ваша IDE, либо в более новых версиях Django что-то изменилось…

  5. dariari:

    Почему при pip install Django пишет отказано в доступе?
    С python -m pip install django работает, но потом для команды django-admin пишет Отказано в доступе. В чём может быть проблема?

    • IgorOsa:

      Проблема может быть в правах доступа к папке, куда устанавливаются зависимости и где размещен пакетный менеджер pip. Как решить не подскажу, так как не сталкивался с такой проблемой и уже некоторое время не работаю с python. Может поисковики подскажут.

Добавить комментарий

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.