fbpx

Каталог статей

Каталог статей для размещения статей информационного характера

Как выучить

Самоучитель Django для начинающих шаг за шагом часть 1 – Создание проекта Django, простой вид

Самоучитель Django для начинающих [шаг за шагом] часть 1 – Создание проекта Django, простой вид

В этой серии уроков мы собираемся сделать пошаговое руководство по основам Django. Этот учебник является полным руководством для начинающих изучать Django. Мы постарались сделать его как можно более простым. Для этого понятия разделены на 10 частей. Если вы новичок, мир разработки может показаться бесконечной дорогой, но все зависит от того, как изучать и практиковать основы.

  • Полное руководство по развертыванию проекта Django с MySQL и Nginx с помощью Docker смотрите в этом руководстве Развертывание проекта Django с помощью docker, Nginx, MySQL.

Обзор Django

Django – это веб-фреймворк на основе языка Python, специально разработанный для того, чтобы помочь разработчикам быстро и эффективно создавать мощные веб-приложения. Ядро фреймворка Django работает с Python версий 2 и 3. Фреймворк был назван в честь известного гитариста Джанго Рейнхардта.

Фреймворк – это набор компонентов. Причина использования фреймворка – предотвращение написания дублирующего кода для схожих задач. Фреймворк – это библиотека, объединенная с заданным способом организации кода. Это многократно используемый код, объединенный в многократно используемую (но часто негибкую) архитектуру.

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

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

Среда разработки

Для создания проекта Django необходимо, чтобы на вашей машине был установлен python. В Linux и MAC он уже установлен и готов к использованию. В windows его нужно сначала установить. Зайдите на python.org и следуйте их инструкциям, чтобы установить python на вашу машину windows. Мы будем использовать Linux Ubuntu 18.04, но все инструкции должны работать и на других версиях Ubuntu, включая 16.04 и 20.04.

Создание и активация виртуальной среды

Виртуальная среда, как следует из ее названия, предоставляет возможность создания виртуальной и изолированной среды для тестирования и производства различных проектов. Например, у нас есть два проекта A и B, оба – Django. Мы сделали проект A несколько лет назад, а B начали недавно. A написан на Django версии 1.5, а B – на версии. Мы используем виртуальное окружение, чтобы два проекта не пересекались. Это означает, что любые изменения, которые вы внесете в среду одного проекта, не повлияют на другие проекты, которые вы разрабатываете.

Установите Django

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

Утилита Pip установит пакет Django и некоторые другие зависимости. Теперь мы создадим наш первый проект Django. Мы назовем проект musiclibrary

Эта команда создаст папку musiclibrary в текущей директории. давайте зайдем в папку musiclibrary

Структура проекта Django

В Django любой сайт, который должен быть разработан, называется “проектом”. Проект состоит из набора “приложений”. Приложение – это набор файлов кода, которые каким-то образом разделены концептуально или функционально. Если вы хотите сделать веб-сайт, то весь веб-сайт будет проектом Django. Скорее всего, на вашем сайте будет одно или несколько приложений (например, платежи, продукты, счета…) Никто не остановит вас, если вы объедините все функции и коды вашего сайта в одно большое приложение внутри вашего проекта. Но это будет болезненно в разработке и поддержке. Это все равно что создать дом, в котором есть только одна большая комната, в которой есть все, от кроватей до ванн, кухни и всего остального. Удобнее разделить части дома по разным комнатам. В ваших проектах Django такие структуры позволяют разработчикам иметь организованную кодовую базу, а также повторно использовать приложения между различными проектами, поскольку каждое приложение (в идеале) независимо от других приложений.

Django следует архитектурному паттерну модель-шаблон-вид (МВТ). MVT (Model View Template) – это шаблон проектирования программного обеспечения. Он представляет собой набор из трех важных компонентов:

Мы рассказали о содержимом нашего только что созданного проекта Django. Там был файл manage.py и папка с именем musiclibrary. Эта папка musiclibrary, которая находится внутри папки проекта musiclibrary (да, у них одинаковые имена), является нашим основным приложением. Она была создана Django автоматически и названа так же, как и наш проект Django (musiclibrary). В целом, проект Django состоит из следующих файлов.

Объяснение вышеперечисленных файлов следующее:

__init__.py: Файл, необходимый Python. Этот файл указывает python рассматривать эту директорию (папку musiclibrary) как python-пакет. Кроме того, вышеупомянутый файл является пустым, и обычно вы не будете ничего добавлять в него.

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

settings.py : Это файл, который содержит все настройки/конфигурации для всего вашего сайта. Просмотрите его, чтобы увидеть доступные настройки, а также значения по умолчанию.

urls.py : Проще говоря, url.py – это как таблица содержания для сайта Django. Он будет направлять запросы пользователей в соответствующую функцию представления для их обработки.

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

Django View является одним из основных участников паттернов Model View Template, которые мы обсуждали ранее. Представления выступают в качестве моста между МОДЕЛЬЮ и ТЕМПЛИТОЙ, в которых находится вся логика проекта. По умолчанию views.py не будет создан при создании проекта. Ожидается, что вы сами создадите его вручную. Поэтому зайдите во внутреннюю папку musiclibrary (основное приложение), создайте файл и назовите его “views.py”. Views.py – это простой файл Python. Внутри этого файла вы создадите функции, которые будут обрабатывать запросы пользователей. Функции в файле views.py принимают веб-запрос и возвращают HTTP-ответ. Для обработки запроса им может потребоваться информация из моделей. Представление – это часть программы, в которой размещается “логика” программы.

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

Напишем наш первый Hello World!

Давайте создадим простое представление hello world, чтобы показать вам, как работают представления в Django. Во-первых, нам нужно определить нашу функцию с помощью ключевого слова def. Def – это зарегистрированное в python ключевое слово для определения функции. Функции представления – это особый вид функций, которые всегда принимают запросы в качестве аргумента и должны возвращать HTTP-ответ. Нет ничего особенного в выборе имен для ваших функций, но это хорошая идея – назвать их как-то осмысленно, чтобы сделать ваш код более понятным для других разработчиков.

На каждом сайте каждый запрос, поступающий на сервер, должен иметь ответ. Например, если пользователь нажимает на ссылку “О сайте” на сайте doprax.com, браузер делает запрос и отправляет его на сервер. Существует представление (функция), которое обрабатывает этот запрос и отправляет пользователю соответствующий ответ. Этим ответом может быть HTML-содержимое веб-страницы или перенаправление. Также это может быть ошибка 404, или XML-документ, или изображение. В зависимости от того, какой запрос вы посылаете, вам будут приходить разные ответы. Учитывая этот вопрос, единственное назначение представления – разбирать запросы, чтобы выдать правильный ответ.

Приведенный выше пример был очень простым примером того, как работают представления. В большинстве случаев представления выполняют более сложные задачи. Откройте файл views.py, который вы только что создали, и скопируйте в него этот небольшой фрагмент кода.

URL в Django

URL означает Uniform Resource Locator. Как уже говорилось, URL – это как таблица содержимого вашего сайта. Каждая страница в интернете имеет свой собственный адрес. Это означает, что всякий раз, когда вы создаете представление, оно должно быть сопоставлено с URL или адресом. Каждое представление вызывается по URL, записанному в файле urls.py в основной папке приложения. Файл urls.py по умолчанию в главном приложении

Обратите внимание, что мы импортировали views в третьей строке, чтобы мы могли ссылаться на функцию hello_world, которая у нас есть в файле view.py. Мы говорим Django, что когда запрос приходит на сервер и запрашиваемый URL имеет вид “/say-hello/” (например, , нужно вызвать функцию hello_world для его обработки.

Запуск локального сервера разработки

Давайте вспомним, что произошло. Мы установили пакет virtualenv, активировали его, а затем установили Django с помощью pip. Мы создали наш первый проект Django под названием musiclibrary. Мы создали нашу первую функцию представления (hello_world) и сопоставили ее с URL (/say-hello/). Теперь пришло время запустить наш проект и посмотреть, как он выглядит в браузере. Прежде чем запрос достигнет нашего проекта Django, он должен быть обработан веб-сервером. К счастью, Django поставляется с отличным встроенным веб-сервером, который имеет все необходимое из коробки. Нам нужно только запустить его. Помните файл manage.py в папке нашего проекта? Пришло время использовать его. Мы запустим веб-сервер с помощью этого файла.

Убедитесь, что у вас активирована виртуальная среда (myenv). Затем убедитесь, что вы находитесь в корне проекта (

/musiclibrary/). Теперь введите эту команду для запуска локального сервера разработки Django:

Это запустит сервер разработки, и по умолчанию он будет доступен через ваш localhost на порту 8000. Откройте браузер и введите этот URL или просто нажмите на эту ссылку ).

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

Это конец первой части. Спасибо за чтение. Нажмите на next, чтобы продолжить обучение.

~

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *