Мы используем 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 ]» и поможет разобраться в деталях обучения.

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

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

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

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

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

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

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

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

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

Онлайн12 занятий
1 700 ₽
Основы языка Python
22 ак.ч.
Основы языка Python

На курсе вы получите базовые навыки программирования на языке Python. Рассматриваются темы от типов данных до объектно-ориентированного программирования. Python – чрезвычайно мощн…

Онлайн10 занятийНачальный
27 500 ₽
Начать без затрат

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

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

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

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

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

Онлайн16 занятий
Бесплатно
Основы Python
Бесплатно1 месяц
Основы Python

Бесплатный курс «Основы Python» позволяет всем желающим погрузиться в тему программирования, понять, насколько вам близка эта сфера и при желании продолжить обучение. Освойте осно…

Онлайн7 занятий
Домашние заданияИнтерактивные тренажёры+4
Бесплатно
Python с нуля до ОГЭ
Бесплатно
Python с нуля до ОГЭ

Если Вы хотели научиться программированию, но не знали с чего начать, то данный курс для вас Важно! Курс разрабатывается и находится в режиме наполнения и редактирования. Поэтому…

Онлайн4 занятий
Бесплатно
Старт в Python
Бесплатно
Старт в Python

Мы начнём с самого нуля и научимся, объявлять переменные, работать с типами данных и управлять потоком. Далее разберём создание функций и применим их на практике для создания конс…

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