Курс "Django 5 для начинающих"
- Работать с фреймворком Django
- Понимать архитектуру MTV
- Управлять URL
- Создавать модели
- Добавлять формы
- Применять шаблоны Django
- Подключать PostgreSQL в качестве БД
- Работать с Django REST Framework и создавать API
Цена курса: 1999р 1599р
Данный курс охватывает целый ряд тем разработки веб-приложений Django 5 на языке Python. Курс состоит из лекций по теории, тестов, практических заданий(задач) и лекций по практическому созданию веб-проекта. Шаг за шагом, мы будем совместно создавать и добавлять функциональность для него.
В курс входят:
- 226 лекций
- 108 тестов
- 107 интерактивных задач
Раздел 1. «Введение в веб-разработку» В этом разделе рассказывается о базовых принципах работы сети Интернет, DNS и веб-серверов, об основных протоколах сети Интернет - TCP/IP, HTTP, HTTPS и методах GET, POST, PUT и DELETE. Затем раздел познакомит с языком разметки HTML. А далее идёт описание работы СУБД и SQL - языка структурированных запросов, так-же есть примеры основных SQL запросов для работы с БД.
Раздел 2. «Основы + HelloWorld на Django» В этом разделе рассказывается как написать самый простейший проект на Django в стиле HelloWorld. В нём подробно описывается структура проекта, миграции, настройки проекта, приложения и модели, работа с представлениями и адресами. Рассматривается работа с шаблонами и представлениями на основе классов(CBV, Class Based Views). Так-же раздел знакомит с тестированием приложений и написанием тестов для проверки корректной работы проекта.
Раздел 3. «Простой проект на Django с БД» В этом разделе рассказывается как создать простой проект с БД. В данном случае будет рассматриватся работа с SQLite. Раздел описывает создание модели базы данных, миграции моделей, создание и использование интерфейса администратора - админ-панели, работу с представлениями, моделями и URL. Так-же будет подробно рассмотрено тестирование данного проекта.
Раздел 4. «CRUD - проект» В этом разделе, при создании данного проекта, основной упор будет на работе с объектами модели данных при чтении, записи, редактировании и удалении записей. Будет рассмотрены два варианта работы: на основе функций и на основе классов.
Раздел 5. «Создание блога» Этот раздел более подробно ознакомит с веб-фреймворком Django посредством создания приложения для ведения блога. Вы создадите базовые модели, представления, шаблоны и URL-адреса блога, чтобы отображать посты блога на страницах. Вы научитесь формировать наборы запросов QuerySet с помощью объектно-реляционного преобразователя Django (ORM) и сконфигурируете встроенный в Django сайт администрирования.
Раздел 6. «Усовершенствование блога» Этот раздел научит добавлять в свой блог постраничную разбивку и реализовывать представления на основе классов Django. Вы научитесь отправлять электронные письма с помощью Django, а также обрабатывать и моделировать формы. Вы также реализуете систему комментариев к постам блога. Также, в этом разделе вы ознакомитесь с процессом создания системы тегирования и научитесь формировать сложные наборы запросов QuerySet, чтобы рекомендовать схожие посты. Здесь вы научитесь создавать собственные шаблонные теги и фильтры. Вы также узнаете, как использовать фреймворк для создания карты веб-сайта. Вы завершите свое приложение для ведения блога переносом БД с SQLite на PostgreSQL, и разработаете поисковый механизм, в котором используются возможности полнотекстового поиска PostgreSQL.
Раздел 7. «Усовершенствование блога. Часть 2.» В этом разделе мы рассмотрим встроенную пользовательскую модель Django на основе django.contrib.auth
, её поля. Создадим новое приложение для пользователей, в котором настроим все необходимые функции, такие как авторизация, регистрация, восстановление пароля и использование сессий. В дальнейшем мы его доработаем, добавив новые поля и профили для пользователей. Разработаем механизм создания и обновление профилей через использование сигналов в Django. После этого у пользователей появится возможность загружать аватары и писать информацию "О себе". Установим и настроим возможность авторизации пользователей через социальные сети(Google, GitHub) посредством OAuth 2.0. Также переделаем дизайн с использованием фреймворка Bootstrap 5.
Раздел 8. «Создание API с помощью Django REST Framework» В этом разделе вы научитесь применять фреймворк, чтобы разработать RESTful API к своему проекту. Мы создадим сериализаторы и представления для моделей, а также разработаем конкретно-прикладные представления API. Мы также добавим аутентификацию в свой API, фильтры, пагинацию и ограничим доступ к представлениям API с помощью разрешений. Наконец, мы добавим схему и документацию, ведь это является жизненно важной частью любого API.
Раздел 9. «Деплой проекта» Последним шагом любого проекта является развертывание. Мы установим виртуальное окружение, сервер приложений Gunicorn и Django. Перенесём файлы проекта на сервер, создадим список зависимостей и установим его. Настроим Django для работы в производственной среде, создадим статические файлы проекта. Установим и настроим веб-сервер NGINX и БД PostgreSQL и перенесём БД с локального компьютера на сервер. И в завершении получим сертификат от Let's Encrypt и настроим HTTPS в NGINX.
Раздел 10. «Создание блога 2.0» В этом модуле мы создадим с вами блог, но уже создавая только представления на основе классов. Мы рассмотрим все основные классы - ListView, DetailView, CreateView, UpdateView, DeleteView. А также добавим в него новый функционал, такой как древовидные категории, систему лайков и дизлайков, рассмотрим миксины, создадим древовидные комментарии, добавим ReCAPTCHA для форм. Установим Debug-Toolbar и оптимизируем SQL запросы и настроим шаблоны страниц ошибок.
Программа курса
Введение в веб-разработку
- Как работает интернет и веб-сайты?
- Краткий конспект по HTML
- Кратко о SQL
Основы + HelloWorld на Django
- Что такое Django
- Основные принципы MVC
- Установка Django и создание проекта HelloWorld
- Диспетчер URL, часть 1.
- Диспетчер URL, часть 2.
- Шаблоны, часть 1.
- Шаблоны, часть 2.
- Введение в тестирование приложений
Простой проект на Django с БД
- Создание проекта, первые модели и админ-панель
- Модели в Django и их поля
- Первые ORM запросы (CRUD)
- Организация связей между таблицами
- Django ORM, методы возвращающие QuerySet
- Django ORM, методы которые не возвращают QuerySet
- Django ORM, поисковые поля и агрегатные функции
- Views/Templates/URLs
CRUD - проект
- Формы в Django
- CRUD проект
Создание блога
- Создание проекта и приложения
- Создание моделей данных блога
- Сайт администрирования
- Работа с наборами запросов QuerySet и менеджерами
- Разработка представлений списка и детальной информации
- Создание шаблонов представлений
- Работа с URL
- Добавление постраничной разбивки
- Разработка представлений на основе классов
- Рекомендация постов по электронной почте
- Создание системы комментариев
- Добавление функциональности тегирования
- Извлечение постов по сходству
- Реализация конкретно-прикладных шаблонных тегов и фильтров
- Добавление карты сайта
- Установка базы данных PostgreSQL
- Добавление полнотекстового поиска в блог
- Введение в пользовательскую систему Django
- Использование системы аутентификации Django
- Доработки системы авторизации и регистрации, добавление сессий
- Профили пользователей и пользовательские поля модели User
- Авторизация через социальные сети посредством OAuth 2.0
- Улучшаем дизайн блога с использованием Bootstrap 5
Создание API с помощью Django REST Framework
- Введение в REST API
- Django REST Framework на примере блога
- Сериализаторы
- Представления
- Фильтрация, поиск
- Пагинация
- Права доступа и токены в DRF
- Схемы и документация
Деплой проекта
- Покупка VPS, доменного имени, привязка DNS и настройка по SSH.
- Установка виртуального окружения, Gunicorn и списка зависимостей
- Установка PostgreSQL, настройка и перенос БД
- Установка и настройка NGINX
- Получение SSL сертификата от Let's Encrypt и настройка HTTPS
Создание блога 2.0
- Начало работы, создание модели статей
- Создание древовидной модели категорий
- Работа с ListView, вывод списка статей
- Работа с DetailView, форматирование и обработка кириллицы в Slug
- Вывод дерева категорий, пагинация, добавление Bootstrap 5
- Оптимизация SQL запросов и установка Debug-Toolbar
- Профили пользователей: Модели и сигналы
- Профили пользователей: Представления и формы.
- Работа с CreateView. Добавление записей пользователями.
- Работа с UpdateView. Обновление записей пользователями.
- Использование миксинов в работе с представлениями Django
- Доработки системы авторизации и регистрации
- Создание древовидных комментариев
- Создание древовидных комментариев, добавление JavaScript
- Добавление функциональности тегирования
- Добавление ReCAPTCHA для форм
- Установка CKEditor 5
- Создание системы Like / Dislike
- Добавление RSS ленты для блога
- Применение кеша и Middleware для получения статуса пользователей
- Настройка своих шаблонов для страниц ошибок 403, 404