Мы используем cookie для стабильной работы сервиса. Подробнее

Программа: Django-разработчик [ Git + Django + SQL + DRF ]

ФорматОнлайн
Объём37 занятий
О курсе

Подробнее

Эта программа — ваш полноценный путь в профессию Django-разработчика. Вы последовательно освоите все необходимые технологии: от фундаментальных основ баз данных и SQL до создания сложных веб-приложений на Django 5, включая разработку REST API, асинхронных компонентов, контейнеризацию и деплой на реальный сервер.   🎯 Цель программы Подготовить junior-разработчика, готового решать реальные задачи: проектировать базы данных, разрабатывать веб-приложения на Django, создавать API, работать в команде с Git и разворачивать проекты в production.   ✨ Почему стоит выбрать именно её? Полный цикл разработки: От проектирования БД до деплоя на сервер с HTTPS. Вы увидите, как создаются настоящие проекты от начала до конца. 5 проектов в портфолио: Блог, интернет-магазин, CRUD-приложение с HTMX, асинхронный чат, API для интернет-магазина. Актуальный стек 2026: Django 5, DRF, PostgreSQL, Docker, Celery, Redis, WebSocket, Git. Поддержка двух авторов-практиков: Опытный разработчик (Илья Перминов) и признанный преподаватель (Pragmatic Programmer) с тысячами учеников. Много практики: Интерактивные задачи, тесты и полноценные проекты для закрепления каждого блока. Экономия на пакете: Покупка программы выгоднее, чем приобретение всех 7 курсов по отдельности.   🔥 Особенности программы 7 взаимодополняющих курсов: Три курса по SQL (от основ до продвинутого), Git, два уровня Django и курс по DRF. Поэтапное усложнение: Фундамент (SQL + Git) → Основы Django → Продвинутый Django → API → Деплой. Современные технологии: В программе есть всё, что требуется в вакансиях Django-разработчика: Docker, Celery, WebSocket, тестирование, JWT. Поддержка и комьюнити: Авторы отвечают на вопросы, помогают с ошибками и дают обратную связь.
Требования

Что нужно для старта

  • Что нужно знать для старта:
  • Базовый Python: переменные, условия, циклы, функции, списки и словари. Если писали простые скрипты или проходили введение в Python — этого достаточно.
  • Основы ООП: классы, объекты, наследование. Достаточно понимать концепцию.
  • Иметь начальные знания HTML, CSS.
  • Уверенное владение компьютером: умение устанавливать программы, работать с файлами, пользоваться браузером.
  • Что будет плюсом, но не обязательно:
  • Общее представление о работе веб-сайтов (что такое сервер, клиент, запрос).
  • Опыт работы в командной строке (заходить в папки, запускать файлы).
  • Технические требования:
  • Компьютер (Windows, macOS или Linux) с выходом в интернет.
  • Возможность устанавливать программы (все бесплатные).
  • 4 ГБ оперативной памяти (8 ГБ — комфортно, но можно и на 4 ГБ).
  • Самое главное: желание разбираться, терпение и готовность пробовать снова, если что-то не получается с первого раза. Остальному мы научим! 🚀
Результат

Что вы получите

  • Проектировать базы данных и писать SQL-запросы любой сложности: от простых выборок до оконных функций, транзакций и оптимизации.
  • Работать с системами контроля версий Git и GitHub: управлять ветками, разрешать конфликты, проходить код-ревью.
  • Разрабатывать веб-приложения на Django 5: модели, представления, шаблоны, формы, админ-панель, авторизация.
  • Создавать полноценные проекты: блог, интернет-магазин, системы комментариев, лайков, тегирования.
  • Применять продвинутые возможности Django: ORM с индексами PostgreSQL, кастомные менеджеры, сигналы, middleware.
  • Строить REST API на Django REST Framework: сериализаторы, ViewSet, JWT-аутентификация, фильтрация, документация.
  • Добавлять современный функционал: асинхронный чат через WebSocket, фоновые задачи Celery, кэширование Redis.
  • Разрабатывать через тестирование (TDD) и писать unit-тесты для Django-приложений.
  • Упаковывать проекты в Docker и разворачивать на реальном сервере с Nginx, Gunicorn, PostgreSQL и HTTPS.
Аудитория

Для кого этот курс

  • 👨‍💻 Новички в программировании и те, кто меняет профессию.
  • Пройдете полный путь с нуля до junior-разработчика: от первых SQL-запросов до деплоя Django-проекта на сервер.
  • 🐍 Python-разработчики, не знакомые с Django.
  • Систематизируете знания и освоите самый востребованный веб-фреймворк на Python с полным стеком современных технологий.
  • 💻 Начинающие Django-разработчики.
  • Закроете пробелы, углубитесь в продвинутые темы (ORM, тестирование, Docker, Celery) и добавите в портфолио 5 полноценных проектов.
  • 🔧 Backend-разработчики на других языках.
  • Быстро войдете в экосистему Python и Django, изучив best practices и современные подходы к разработке API.
  • 🎓 Студенты и выпускники IT-специальностей.
  • Получите практические навыки, которых так не хватает в вузах, и соберете проекты для уверенного старта карьеры.
  • 🚀 Выпускники онлайн-курсов по Python.
  • Перейдете от теории к практике: научитесь создавать полноценные веб-приложения, которые можно показать работодателю.
  • 👥 Разработчики, желающие работать на фрилансе.
  • Освоите востребованный стек для коммерческой разработки: от админок для сайтов до сложных API под мобильные приложения.
Содержание

Программа курса

37 занятий
№ТемаЧто внутри
01Git [1] Основы Git

- Знакомство
- О курсе
- Обзор систем контроля версий
- Установка и настройка Git
- Первый репозиторий
- Первый коммит
- Индекс
- Подробнее о коммита
- Откат изменений
- Удаление файлов
- Переименование/перемещение файлов
- Просмотр изменений
- История коммитов
- Машина времени (изменение истории)
- Игнорирование файлов
- Домашнее задание

02Git [2] GitHub

- Создание удаленного репозитория
- Клонирование репозитория
- SSH аутентификация
- Копирование чужого репозитория (fork)
- GitHub Copilot
- Файл Readme.md и разметка Markdown
- Альтернативы GitHub
- Домашнее задание

03Git [3] Ветвление и командная работа

- Введение в ветки
- Переключение между ветками
- Создание, просмотр, удаление веток
- Слияние веток
- Конфликты при слиянии
- Экстренное переключение между задачами
- Безопасное обновление репозитория
- Поиск автора кода
- Запросы на слияние (Pull Request)
- Большая шпаргалка

04SQL [1] Установка рабочего окружения

- О курсе
- Установка MySQL сервера
- Работа в терминале
- Графические IDE (Workbench, DBeaver)
- Взаимодействие с сервером
- Контрольные вопросы
- Решаем задачи. Пишем SQL код

05SQL [2] Проектирование БД (команды DDL)

- Первичные ключи
- Особенности типов данных и именование объектов
- Руководство по стилю SQL · SQL Style Guide
- Индексы
- Внешние ключи
- Подробнее про ALTER TABLE
- Особенности синтаксиса MySQL
- Виды связей между таблицами (1х1, 1хМ, МхМ)
- Таблицы-справочники
- ER-диаграмма
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2

06SQL [3] Работа с данными (команды DML, CRUD)

- Команда INSERT
- Команда SELECT
- Команда UPDATE
- Команда DELETE
- Бонус: Сервисы для генерации данных
- Импорт-экспорт данных
- Контрольные вопросы
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2

07SQL [4] Основы SELECT запросов

- Фильтрация (WHERE + LIKE)
- Сортировка (ORDER BY)
- Агрегирующие функции (COUNT, MIN, MAX, AVG, SUM)
- Группировка (GROUP BY)
- Фильтрация (HAVING)
- Отсутствие значения (NULL)
- Пейджинг (LIMIT + OFFSET)
- Условия, ветвления (IF, CASE)
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Контрольные вопросы. Часть 3
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2

08Django [1] - Введение в веб-разработку

- Как работает интернет и веб-сайты?
- Краткий конспект по HTML

09Django [1] - Основы + HelloWorld на Django

- Что такое Django
- Основные принципы MVC
- Установка Django и создание проекта HelloWorld
- Диспетчер URL, часть 1.
- Диспетчер URL, часть 2.
- Шаблоны, часть 1.
- Шаблоны, часть 2.
- Введение в тестирование приложений

10Django [1] - Простой проект на Django с БД

- Создание проекта, первые модели и админ-панель
- Модели в Django и их поля
- Первые ORM запросы (CRUD)
- Организация связей между таблицами
- Django ORM, методы возвращающие QuerySet
- Django ORM, методы которые не возвращают QuerySet
- Django ORM, поисковые выражения и агрегатные функции
- Views/Templates/URLs

11Django [1] - CRUD - проект

- Формы в Django
- CRUD проект

12Django [1] - Создание блога на функциях

- Создание проекта и приложения
- Создание моделей данных блога
- Сайт администрирования
- Работа с наборами запросов QuerySet и менеджерами
- Разработка представлений списка и детальной информации
- Создание шаблонов представлений
- Работа с URL
- Добавление постраничной разбивки
- Разработка представлений на основе классов
- Рекомендация постов по электронной почте
- Создание системы комментариев
- Добавление функциональности тегирования
- Извлечение постов по сходству
- Реализация пользовательских шаблонных тегов и фильтров
- Добавление карты сайта
- Установка базы данных PostgreSQL
- Добавление полнотекстового поиска в блог
- Введение в пользовательскую систему Django
- Использование системы аутентификации Django
- Доработки системы авторизации и регистрации, добавление сессий
- Прoфили пользователей и пользовательские поля модели User
- Авторизация через социальные сети посредством OAuth 2.0
- Улучшаем дизайн блога с использованием Bootstrap 5

13Django [1] - Деплой проекта

- Покупка VPS, доменного имени, привязка DNS и настройка по SSH.
- Установка виртуального окружения, Gunicorn и списка зависимостей
- Установка PostgreSQL, настройка и перенос БД
- Установка и настройка NGINX
- Получение SSL сертификата от Let's Encrypt и настройка HTTPS

14Django [1] - Создание блога 2.0 на классах

- Начало работы, создание модели статей
- Создание древовидной модели категорий
- Представления на основе классов
- Рабoта с ListView, вывод списка статей
- Работа с DetailView, форматирование и обработка кириллицы в Slug
- Вывод дерева категорий, пагинация, добавление Bootstrap 5
- Оптимизация SQL запросов и установка Debug-Toolbar
- Профили пользователей: Модели и сигналы
- Профили пользователей: Представления и формы.
- Работа с CreateView. Добавление записей пользователями.
- Работа с UpdateView. Обновление записей пользователями.
- Использование миксинов в работе с представлениями Django
- Доработки системы авторизации и регистрации
- Создание древовидных комментариев
- Создание древовидных комментариев, добавление JavaScript
- Добавление функциональности тегирования
- Добавление ReCAPTCHA для форм
- Интеграция WYSIWYG-редактора, установка CKEditor
- Создание системы Like / Dislike
- Добавление RSS ленты для блога
- Кеширование и Middleware для получения статуса пользователей
- Настройка своих шаблонов для страниц ошибок 403, 404

15Django [2] - Django ORM на основе проекта

- Структура и поля моделей, создание проекта
- Связь One-To-One (Один к одному)
- Связь One-To-Many (Один ко многим)
- Связь Many-to-Many (Многие ко многим)
- Методы возвращающие QuerySet
- Методы, которые не возвращают QuerySet
- Поисковые поля
- Агрегатные функции и их группировка
- Q-объекты и F-объекты
- Мета-классы
- Абстрактные модели
- Пользовательские менеджеры моделей

16Django [2] - Индексы баз данных

- Введение в индексы баз данных
- Подготовка проекта и установка Debug Toolbar, генерация данных
- Индексы PostgreSQL

17Django [2] - Разработка через тестирование

- Что такое разработка через тестирование?
- Введение в UnitTest
- Создание нового проекта и введение в Django тестирование
- Написание тестов для моделей и URL-адресов
- Написание тестов для форм и шаблонов
- Написание тестов для представлений

18Django [2] - Разрешения в Django

- Разрешения на уровне пользователя
- Разрешения на уровне группы

19Django [2] - HTMX на основе CRUD проекта

- Введение в HTMX и создание проекта
- Модели и создание шаблонов
- Создание представлений
- Cоздание, редактирование и удаление записей
- Cортировка записей
- Добавление в проект Bootstrap 5
- Итоги работы

20Django [2] - Интернационализация и локализация в Django

- Введение в интернационализацию и подготовка проекта
- Перевод моделей и форм
- Перевод шаблонов
- Использование библиотеки Rosetta
- Шаблоны URL-адресов для интернационализации
- Переключение языка сайта

21Django [2] - Создание чата на Django с использованием WebSocket

- Введение в WebSocket
- Установка Channels и подготовка проекта
- Создание кастомной User модели
- Создание моделей чата
- Работа с представлениями и шаблонами
- Работа с WebSocket
- Работа с WebSocket, добавление асинхронности
- Redis + Django Channel

22Django [2] - Асинхронные задачи в Django + Сelery + Redis

- Введение в Celery
- Подготовка проекта, добавление подтверждения регистрации
- Асинхронная отправка электронных писем
- Периодические задания
- Отслеживание Celery с помощью Flower

23Django [2] - Инфраструктура кэширования в Django

- Введение в кэширование
- Виды кэша в Django
- Уровни кэша в Django
- Итоги работы

24Django [2] - Docker

- Знакомство с Docker
- Основные команды Docker
- Создание образов и запуск контейнера
- Контейнеризация Django и написание Dockerfile
- Введение в Docker Compose
- Docker Compose на примере Django, PostgreSQL и Memcached
- Подготовка к деплою, Gunicorn и NGINX в Docker Compose
- Настройка Docker-Compose для статических и медиа файлов

25Django [2] - Деплой проекта через Docker

- Покупка VPS, доменного имени, привязка DNS
- Установка Docker на сервере
- Запуск Docker контейнеров на сервере
- Получение SSL-сертификата от Let's Encrypt и настройка HTTPS

26DRF - Введение в API

- Что такое API и его типы?
- Изучаем REST. Архитектура и лучшие практики
- HTTP методы и идемпoтентность
- Коды состояний HTTP

27DRF - Знакомство с Django REST Framework

- Что такое DRF?
- Установка Django и создание проекта HelloWorld на DRF

28DRF - Создание CRUD-приложения на DRF

- Подготовка проекта на Django
- Сериализаторы
- Cериализаторы, часть 2
- Представления на основе функций
- Представления на основе классов (APIView)
- GenericAPIView и использование миксинов
- ViewSet и ModelViewSet
- Маршрутизация и декоратор @action

29DRF - Интернет магазин на DRF

- Подготовка проекта, создание приложений
- Оптимизация моделей (абстрактные модели и кастомный QuerySet)
- Создание моделей покупателей
- Создание моделей продавцов и магазина
- Создание моделей заказов
- Использование автоматической документации
- Авторизация и аутентификация на основе JWT токенов
- Авторизация и аутентификация на основе JWT токенов, часть 2
- Работа с эндпоинтами профиля и загрузка файлов
- Работа с эндпоинтами продавца и магазина
- Работа с эндпоинтами продавца и магазина, часть 2
- Работа с эндпоинтами корзины
- Работа с эндпоинтами заказов
- Управление правами доступа
- Добавление фильтрации товаров
- Добавление пагинации товаров
- Экзамен

30DRF - Продвинутые возможности в DRF

- CORS
- Дросселирование (throttling)
- Версионирование API
- Асинхронность в DRF
- Тестирование в DRF, часть 1
- Тестирование в DRF, часть 2

31SQL [5] Сложные SELECT запросы

- Вложенные запросы (подзапросы)
- Объединения (JOIN) - Теория
- Объединения (CROSS JOIN, INNER JOIN)
- Объединения (LEFT JOIN, RIGHT JOIN)
- Объединения (FULL OUTER JOIN)
- Вложенные запросы VS объединения
- Соединения (UNION)
- Оконные функции
- Общие табличные выражения (CTE)
- Рекурсивные табличные выражения
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
- Решаем задачи. Пишем SQL код. Часть 3
- Решаем задачи. Пишем SQL код. Часть 4

32SQL [6] Продвинутые фичи SQL

- Полнотекстовый поиск
- Представления (View)
- Хранимые процедуры
- Пользовательские функции
- Переменные
- Триггеры
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Контрольные вопросы. Часть 3
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2

33SQL [7] Транзакции

- Введение в транзакции
- Обработка исключений (ошибок)
- Уровни изоляции транзакций
- Блокировки таблиц
- Взаимная блокировка (deadlock)
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код

34SQL [8] Права доступа

- Пользователи
- Роли
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код

35SQL [9] Вопросы оптимизации

- Лишний JOIN
- Денормализация
- Настройки сервера
- Анализ запросов (EXPLAIN)
- Графический план исполнения запроса
- Исправление проблемных мест
- Графический план: показательные примеры
- Контрольные вопросы
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2

36SQL [10] Дополнительные темы

- Работа с логами
- Циклы
- Курсоры
- SQL инъекции
- Контрольные вопросы
- Решаем задачи. Пишем SQL код

37Завершение

- Итоги

01Git [1] Основы Git

- Знакомство
- О курсе
- Обзор систем контроля версий
- Установка и настройка Git
- Первый репозиторий
- Первый коммит
- Индекс
- Подробнее о коммита
- Откат изменений
- Удаление файлов
- Переименование/перемещение файлов
- Просмотр изменений
- История коммитов
- Машина времени (изменение истории)
- Игнорирование файлов
- Домашнее задание

02Git [2] GitHub

- Создание удаленного репозитория
- Клонирование репозитория
- SSH аутентификация
- Копирование чужого репозитория (fork)
- GitHub Copilot
- Файл Readme.md и разметка Markdown
- Альтернативы GitHub
- Домашнее задание

03Git [3] Ветвление и командная работа

- Введение в ветки
- Переключение между ветками
- Создание, просмотр, удаление веток
- Слияние веток
- Конфликты при слиянии
- Экстренное переключение между задачами
- Безопасное обновление репозитория
- Поиск автора кода
- Запросы на слияние (Pull Request)
- Большая шпаргалка

04SQL [1] Установка рабочего окружения

- О курсе
- Установка MySQL сервера
- Работа в терминале
- Графические IDE (Workbench, DBeaver)
- Взаимодействие с сервером
- Контрольные вопросы
- Решаем задачи. Пишем SQL код

05SQL [2] Проектирование БД (команды DDL)

- Первичные ключи
- Особенности типов данных и именование объектов
- Руководство по стилю SQL · SQL Style Guide
- Индексы
- Внешние ключи
- Подробнее про ALTER TABLE
- Особенности синтаксиса MySQL
- Виды связей между таблицами (1х1, 1хМ, МхМ)
- Таблицы-справочники
- ER-диаграмма
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2

06SQL [3] Работа с данными (команды DML, CRUD)

- Команда INSERT
- Команда SELECT
- Команда UPDATE
- Команда DELETE
- Бонус: Сервисы для генерации данных
- Импорт-экспорт данных
- Контрольные вопросы
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2

07SQL [4] Основы SELECT запросов

- Фильтрация (WHERE + LIKE)
- Сортировка (ORDER BY)
- Агрегирующие функции (COUNT, MIN, MAX, AVG, SUM)
- Группировка (GROUP BY)
- Фильтрация (HAVING)
- Отсутствие значения (NULL)
- Пейджинг (LIMIT + OFFSET)
- Условия, ветвления (IF, CASE)
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Контрольные вопросы. Часть 3
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2

08Django [1] - Введение в веб-разработку

- Как работает интернет и веб-сайты?
- Краткий конспект по HTML

09Django [1] - Основы + HelloWorld на Django

- Что такое Django
- Основные принципы MVC
- Установка Django и создание проекта HelloWorld
- Диспетчер URL, часть 1.
- Диспетчер URL, часть 2.
- Шаблоны, часть 1.
- Шаблоны, часть 2.
- Введение в тестирование приложений

10Django [1] - Простой проект на Django с БД

- Создание проекта, первые модели и админ-панель
- Модели в Django и их поля
- Первые ORM запросы (CRUD)
- Организация связей между таблицами
- Django ORM, методы возвращающие QuerySet
- Django ORM, методы которые не возвращают QuerySet
- Django ORM, поисковые выражения и агрегатные функции
- Views/Templates/URLs

11Django [1] - CRUD - проект

- Формы в Django
- CRUD проект

12Django [1] - Создание блога на функциях

- Создание проекта и приложения
- Создание моделей данных блога
- Сайт администрирования
- Работа с наборами запросов QuerySet и менеджерами
- Разработка представлений списка и детальной информации
- Создание шаблонов представлений
- Работа с URL
- Добавление постраничной разбивки
- Разработка представлений на основе классов
- Рекомендация постов по электронной почте
- Создание системы комментариев
- Добавление функциональности тегирования
- Извлечение постов по сходству
- Реализация пользовательских шаблонных тегов и фильтров
- Добавление карты сайта
- Установка базы данных PostgreSQL
- Добавление полнотекстового поиска в блог
- Введение в пользовательскую систему Django
- Использование системы аутентификации Django
- Доработки системы авторизации и регистрации, добавление сессий
- Прoфили пользователей и пользовательские поля модели User
- Авторизация через социальные сети посредством OAuth 2.0
- Улучшаем дизайн блога с использованием Bootstrap 5

13Django [1] - Деплой проекта

- Покупка VPS, доменного имени, привязка DNS и настройка по SSH.
- Установка виртуального окружения, Gunicorn и списка зависимостей
- Установка PostgreSQL, настройка и перенос БД
- Установка и настройка NGINX
- Получение SSL сертификата от Let's Encrypt и настройка HTTPS

14Django [1] - Создание блога 2.0 на классах

- Начало работы, создание модели статей
- Создание древовидной модели категорий
- Представления на основе классов
- Рабoта с ListView, вывод списка статей
- Работа с DetailView, форматирование и обработка кириллицы в Slug
- Вывод дерева категорий, пагинация, добавление Bootstrap 5
- Оптимизация SQL запросов и установка Debug-Toolbar
- Профили пользователей: Модели и сигналы
- Профили пользователей: Представления и формы.
- Работа с CreateView. Добавление записей пользователями.
- Работа с UpdateView. Обновление записей пользователями.
- Использование миксинов в работе с представлениями Django
- Доработки системы авторизации и регистрации
- Создание древовидных комментариев
- Создание древовидных комментариев, добавление JavaScript
- Добавление функциональности тегирования
- Добавление ReCAPTCHA для форм
- Интеграция WYSIWYG-редактора, установка CKEditor
- Создание системы Like / Dislike
- Добавление RSS ленты для блога
- Кеширование и Middleware для получения статуса пользователей
- Настройка своих шаблонов для страниц ошибок 403, 404

15Django [2] - Django ORM на основе проекта

- Структура и поля моделей, создание проекта
- Связь One-To-One (Один к одному)
- Связь One-To-Many (Один ко многим)
- Связь Many-to-Many (Многие ко многим)
- Методы возвращающие QuerySet
- Методы, которые не возвращают QuerySet
- Поисковые поля
- Агрегатные функции и их группировка
- Q-объекты и F-объекты
- Мета-классы
- Абстрактные модели
- Пользовательские менеджеры моделей

16Django [2] - Индексы баз данных

- Введение в индексы баз данных
- Подготовка проекта и установка Debug Toolbar, генерация данных
- Индексы PostgreSQL

17Django [2] - Разработка через тестирование

- Что такое разработка через тестирование?
- Введение в UnitTest
- Создание нового проекта и введение в Django тестирование
- Написание тестов для моделей и URL-адресов
- Написание тестов для форм и шаблонов
- Написание тестов для представлений

18Django [2] - Разрешения в Django

- Разрешения на уровне пользователя
- Разрешения на уровне группы

19Django [2] - HTMX на основе CRUD проекта

- Введение в HTMX и создание проекта
- Модели и создание шаблонов
- Создание представлений
- Cоздание, редактирование и удаление записей
- Cортировка записей
- Добавление в проект Bootstrap 5
- Итоги работы

20Django [2] - Интернационализация и локализация в Django

- Введение в интернационализацию и подготовка проекта
- Перевод моделей и форм
- Перевод шаблонов
- Использование библиотеки Rosetta
- Шаблоны URL-адресов для интернационализации
- Переключение языка сайта

21Django [2] - Создание чата на Django с использованием WebSocket

- Введение в WebSocket
- Установка Channels и подготовка проекта
- Создание кастомной User модели
- Создание моделей чата
- Работа с представлениями и шаблонами
- Работа с WebSocket
- Работа с WebSocket, добавление асинхронности
- Redis + Django Channel

22Django [2] - Асинхронные задачи в Django + Сelery + Redis

- Введение в Celery
- Подготовка проекта, добавление подтверждения регистрации
- Асинхронная отправка электронных писем
- Периодические задания
- Отслеживание Celery с помощью Flower

23Django [2] - Инфраструктура кэширования в Django

- Введение в кэширование
- Виды кэша в Django
- Уровни кэша в Django
- Итоги работы

24Django [2] - Docker

- Знакомство с Docker
- Основные команды Docker
- Создание образов и запуск контейнера
- Контейнеризация Django и написание Dockerfile
- Введение в Docker Compose
- Docker Compose на примере Django, PostgreSQL и Memcached
- Подготовка к деплою, Gunicorn и NGINX в Docker Compose
- Настройка Docker-Compose для статических и медиа файлов

25Django [2] - Деплой проекта через Docker

- Покупка VPS, доменного имени, привязка DNS
- Установка Docker на сервере
- Запуск Docker контейнеров на сервере
- Получение SSL-сертификата от Let's Encrypt и настройка HTTPS

26DRF - Введение в API

- Что такое API и его типы?
- Изучаем REST. Архитектура и лучшие практики
- HTTP методы и идемпoтентность
- Коды состояний HTTP

27DRF - Знакомство с Django REST Framework

- Что такое DRF?
- Установка Django и создание проекта HelloWorld на DRF

28DRF - Создание CRUD-приложения на DRF

- Подготовка проекта на Django
- Сериализаторы
- Cериализаторы, часть 2
- Представления на основе функций
- Представления на основе классов (APIView)
- GenericAPIView и использование миксинов
- ViewSet и ModelViewSet
- Маршрутизация и декоратор @action

29DRF - Интернет магазин на DRF

- Подготовка проекта, создание приложений
- Оптимизация моделей (абстрактные модели и кастомный QuerySet)
- Создание моделей покупателей
- Создание моделей продавцов и магазина
- Создание моделей заказов
- Использование автоматической документации
- Авторизация и аутентификация на основе JWT токенов
- Авторизация и аутентификация на основе JWT токенов, часть 2
- Работа с эндпоинтами профиля и загрузка файлов
- Работа с эндпоинтами продавца и магазина
- Работа с эндпоинтами продавца и магазина, часть 2
- Работа с эндпоинтами корзины
- Работа с эндпоинтами заказов
- Управление правами доступа
- Добавление фильтрации товаров
- Добавление пагинации товаров
- Экзамен

30DRF - Продвинутые возможности в DRF

- CORS
- Дросселирование (throttling)
- Версионирование API
- Асинхронность в DRF
- Тестирование в DRF, часть 1
- Тестирование в DRF, часть 2

31SQL [5] Сложные SELECT запросы

- Вложенные запросы (подзапросы)
- Объединения (JOIN) - Теория
- Объединения (CROSS JOIN, INNER JOIN)
- Объединения (LEFT JOIN, RIGHT JOIN)
- Объединения (FULL OUTER JOIN)
- Вложенные запросы VS объединения
- Соединения (UNION)
- Оконные функции
- Общие табличные выражения (CTE)
- Рекурсивные табличные выражения
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2
- Решаем задачи. Пишем SQL код. Часть 3
- Решаем задачи. Пишем SQL код. Часть 4

32SQL [6] Продвинутые фичи SQL

- Полнотекстовый поиск
- Представления (View)
- Хранимые процедуры
- Пользовательские функции
- Переменные
- Триггеры
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Контрольные вопросы. Часть 3
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2

33SQL [7] Транзакции

- Введение в транзакции
- Обработка исключений (ошибок)
- Уровни изоляции транзакций
- Блокировки таблиц
- Взаимная блокировка (deadlock)
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код

34SQL [8] Права доступа

- Пользователи
- Роли
- Контрольные вопросы. Часть 1
- Контрольные вопросы. Часть 2
- Решаем задачи. Пишем SQL код

35SQL [9] Вопросы оптимизации

- Лишний JOIN
- Денормализация
- Настройки сервера
- Анализ запросов (EXPLAIN)
- Графический план исполнения запроса
- Исправление проблемных мест
- Графический план: показательные примеры
- Контрольные вопросы
- Решаем задачи. Пишем SQL код. Часть 1
- Решаем задачи. Пишем SQL код. Часть 2

36SQL [10] Дополнительные темы

- Работа с логами
- Циклы
- Курсоры
- SQL инъекции
- Контрольные вопросы
- Решаем задачи. Пишем SQL код

37Завершение

- Итоги

Организатор

Автор курса

StepikStepik
Stepik — образовательная платформа и конструктор онлайн-курсов. Мы разрабатываем алгоритмы адаптивного обучения, сотрудничаем с авторами MOOC, помогаем в проведении олимпиад и программ переподготовки. Наша цель — сделать образование открытым и удобным. Stepik — широко известная российская образовательная платформа, основанная в 2013 году. На Stepik зарегистрировано более миллиона пользователей из России и стран СНГ. В настоящее время на Stepik представлены несколько тысяч учебных курсов на самые разные темы.
Подробнее об авторе
Мнения учеников

Отзывы о курсе

Оставьте отзыв

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

Напишите ваш коментарий, не менее 30 символов

Нажимая кнопку, вы даете согласие на обработку персональных данных

Оставьте заявку

Консультант ответит на вопросы о курсе «Программа: Django-разработчик [ Git + Django + SQL + DRF ]» и поможет разобраться в деталях обучения.

Комментарий ...

Нажимая кнопку, вы даете согласие на обработку персональных данных

Информация обновлена 21 сентября 2026 г.

Продолжить выбор

Похожие курсы

Фреймворк Apache Spark для разработчиков: продвинутый уровень
−10%32 академ. часов
Фреймворк Apache Spark для разработчиков: продвинутый уровень

Глубокое погружение в внутреннее устройство Apache Spark и его компонентов. Этот курс поможет вам понять, как устроены и работают различные модули Spark, такие как Spark Core, Spa…

ОнлайнПродвинутый
55 500 ₽−10%
49 950 ₽
SQL практикум. Полный курс
4-5 часов в неделю
SQL практикум. Полный курс

Загляни в Телеграм канал курса. Там обсуждение и новости. В конце курса студентов ждет приятный бонус! 🎁 Цель курса Научить вас работать с базами данных на профессиональном уровне…

Онлайн12 занятий
890 ₽
Базы данных с нуля
−35%
Базы данных с нуля

Разберись в реляционных и NoSQL базах и спроектируй свою: 2 месяца онлайн, практика и сертификат. Открой программу и тарифы.

ОнлайнНачальный
14 900 ₽−35%
9 680 ₽Рассрочка на 12 мес.
SQL-разработчик: тариф PRO
23 октября
SQL-разработчик: тариф PRO

Практический онлайн-курс, на котором вы с нуля за 3 месяца освоите профессию SQL-разработчика в своем темпе и с обратной связью от опытных экспертов. Изучите основы работы с реляц…

Онлайн
Персональный наставникДомашние задания+4
89 900 ₽от 18 729 ₽/мес на 7491 мес.
Начать без затрат

Бесплатные курсы

Python для решения практических задач
Бесплатно
Python для решения практических задач

Научились решать простые задачи на питоне, но не можете понять, как сделать что-то полезное? Наш курс научит вас правильно гуглить! На примерах задач сбора данных (Data Scraping)…

Онлайн5 занятий
Бесплатно
Python для геймеров: базовый курс на игровых примерах
Бесплатно4 часа в неделю
Python для геймеров: базовый курс на игровых примерах

Здесь не будет сложных задач «про шахматы»! Здесь не будет абстрактных задач и сложных математических вычислений. Зато есть: теория простым и понятным языком игровые механики логи…

Онлайн12 занятий
Бесплатно
"Поколение Python": курс для начинающих
Бесплатно
"Поколение Python": курс для начинающих

"Поколение Python: курс для начинающих" знакомит с основными типами данных, конструкциями и принципами структурного программирования языка Python. Целевая аудитория – школьники, с…

Онлайн17 занятий
Бесплатно