Разработка сайтов на Django

Модуль из 7 уроков

Не останавливаемся на изучении Python - в дополнение к нему также изучим ваш первый фреймворк, который позволит вам создать полноценный крупный сайт со всем необходимым функционалом
Django используется и использовался во многих современных крупных веб-сайтах. Так, например, он используется в Instagram, YouTube, Pinterest и многих других.
Данный фреймворк "из коробки" включает в себя огромное множество различных функций, которые вам не придется создавать с нуля. Этим он выгодно отличается от прочих сторонних фреймворков
Именно поэтому стоит начать разработку сайтов именно с него

Навыки и технологии, которые вы освоите

  • паттерн MVC/MTV
  • работа с базой данных
  • Django ORM
  • работа с контроллерами
  • работа с формами
  • функции и классы контроллеры
  • обработка нескольких объектов из моделей

Уроки

Урок 1 из 7
Установка Django. Настройка среды и проекта
Начало работы с сайтом начинается с установки всех необходимых библиотек, создания проекта, его настройки и отладки
Все функции из коробки
После установки проекта и создания приложения почти сразу можно создать свою первую страницу - это возможно благодаря широкому набору базовых функций, которые доступны в Django "из коробки"
Паттерн проектирования MVC/MTV
Зачастую в Django разработка проекта сайта происходит в рамках паттерна MTV(Model-Template-View), родственника паттерна MVC(Model-View-Controller). Суть заключается в разграничении области ответственности частей проекта. Это облегчает отладку кода, масштабизацию проекта и его отладку
11 заданий
2 учебных часа
ревью кода
Урок 2 из 7
Готовим речь
Модели
Хранение всех полезной информации происходит в базах данных, а модели Django позволяют удобно работать с ними
Модели - таблицы
Каждая модель представляет из себя представление конкретной таблицы в базе данных, набор ее полей и свойств, отношений между таблицами и так же их функциональность
Django ORM
Для управления моделями существует удобный инструмент - ORM. Он позволяет относиться к каждой записи в БД как к отдельному объекту и производить над ним необходимые операции. С Django ORM вам не придется вручную прописывать сложнопонятный SQL-код для предоставления данных таблиц
10 заданий
4 учебных часа
ревью кода
Урок 3 из 7
Рассылаем имейлы
Маршрутизатор и контроллеры
Основой работы сайта являются его маршруты и функции, обслуживающие каждый конкретный маршрут. Без них работа сайта невозможна
Карта сайта
Каждый из маршрутов ведет на определенный раздел сайта. У полноценного тяжеловесного проекта бывают десятки и сотни различных разделов. Для них маршрутизатор выступает некой картой сайта
Обработка запросов
Поступающие по маршруту запросы обрабатываются контроллерами. Они решают, что делать с тем или иным видом запросов, как реагировать на ошибки, что отдавать в качестве ответа, ограничивать или нет запросы пользователей к разделу
9 заданий
8 учебных часов
ревью кода
Урок 4 из 7
Нарезаем аватарки
Шаблоны и их рендеринг
Шаблоны представляют собой "скелет" внешнего вида страницы. Они полезны тем, что позволяют повторно использовать одинаковые элементы на нескольких страницах без необходимости их переписывания
Наследование шаблонов
Стиль элементов и структура блоков одной страницы всегда должны соблюдаться на всех остальных в составе одного сайта. Разработчики делают это не вручную, а посредством использования функционала наследования шаблонов
Директивы, теги, фильтры
Порой информацию, переданную через контроллер в шаблон, необходимо дополнительно обрабатывать. Для этого существует "последний рубеж" операторов Django - директивы, теги и фильтры шаблонов
10 заданий
5 учебных часов
ревью кода
Урок 5 из 7
Создаём человеков
Формы и их обработка
Для ввода данных и отправки со страницы POST-запросов требуется объект, который может принять эти данные, провести с ними валидацию и отправить по необходимому адресу. В этом помогут формы
Валидация данных
Формы Django способны автоматически валидировать подаваемые данные без необходимости написания собственных валидаторов. Достаточно лишь указать тип данных вводимых в поле, остальное Django сделает сам
Виды форм
Формы бывают связанными с моделями, бывают самостоятельными. Бывают связанными с данными, бывают несвязанными с данными. Все виды форм вы подробно изучите в хоте данного урока
13 заданий
5 учебных часов
ревью кода
Урок 6 из 7
Оцениваем пароли
Настройка админки
В Django присутствует полезный инструмент - админка. Она позволяет вручную изменять данные моделей и пользователей
Настройки отображения
По умолчанию доступен просмотр объектов модели лишь по их названию. Но возможно добавление дополнительных полей вывода в базовую таблицу
Фильтры и сортировки
В работе с крупными сайтами объектов моделей становится несоизмеримо много. Работать с ними становится неудобно без элементов фильтров и сортировок. Их добавление в админку позволит просматривать пользовательский контент гораздо быстрее
14 заданий
6 учебных часов
ревью кода
Урок 7 из 7
Ищем где выпить кофе
Полусамостоятельный проект
Теперь вы знаете многое о данном фреймворке и в состоянии написать свой собственный сайт. Мы же вам поможем в этом
Разработайте концепцию и структуру сайта
Перед написанием кода подумайте о том, что будет на вашем сайте, какая у него будет структура. Важно также первоначально прикинуть то, какие данные придется хранить в полях моделей, сколько их будет и каким образом они будут связаны друг с другом
Начните разработку
Создайте маршруты, модели, контроллеры, но не торопитесь делать все сразу. Начните с малого - стартовая страница, общий наследуемый шаблон и базовая структура моделей
13 заданий
8 учебных часов
ревью кода

Что входит в модуль

  • 7 проектов в портфолио

    Каждый урок — это новый учебный проект с пошаговыми инструкциями и практическими советами.

  • Кодревью

    Преподаватель прочитает ваш код и расскажет, как сделать лучше.

  • Свободный график занятий

    Занимайтесь в любое удобное время, в своем темпе.

  • Доступ к учебным материалам

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

Зарегистрироваться
Первый урок с преподавателем бесплатно!