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

Разработка backend-приложений на Django: полный курс

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

Подробнее

Данный курс охватывает целый ряд тем разработки веб-приложений Django на языке Python, с нулевого до продвинутого уровня. Начальные знания по Django не требуются. Курс 1 Раздел 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. Также интегрируем WYSIWYG редактор Summernote и переделаем дизайн с использованием фреймворка 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 запросы и настроим шаблоны страниц ошибок. Курс 2 Раздел 1. «Основы GIT» Этот раздел кратко познакомит с Git, с этой распределенной системой контроля версий, которая поможет вам отслеживать и управлять изменениями в исходном коде своих проектов. В нём будут рассмотрены базовые команды Git, которые чаще всего используются при повседневной работе с ним. Раздел 2. «Django ORM на основе проекта» Данный раздел объяснит работу Django ORM, объявление модели, запросы (менеджер, набор запросов), поддержку нескольких драйверов, написание пользовательских запросов, миграции и т. д. В нем будут рассмотрены связи один-к-одному, один-ко-многим и  многие-ко-многим, методы возвращающие QuerySet и не возвращающие, и поисковые поля. Так-же в данном разделе будет рассмотрены агрегатные функции и их группировка, Q-объекты и F-объекты, Мета-классы, абстрактные модели и пользовательские менеджеры моделей. Раздел 3. «Индексы баз данных» В этом разделе мы рассмотрим индексы в базе данных PostgreSQL, которые можно использовать для оптимизации наших запросов. Раздел 4. «Разработка через тестирование» В этом разделе рассматривается подход к разработке приложений через написание тестов, который даёт нам надежный способ планирования каждой функции, до написания её кода. Написание автоматизированных тестов для средних и крупных приложений имеет важное значение. Раздел 5. «Разрешения в Django» В этом разделе мы рассмотрим, как назначить права доступа пользователям и группам, чтобы разрешить им выполнять определенные действия. Раздел 6. «HTMX на основе CRUD проекта» В данном разделе, на примере, рассматривается использование библиотеки HTMX в CRUD проекте, для динамического изменения контента страницы, без её перезагрузки. Данная библиотека даст нам простой способ использования AJAX(Asynchronous Javascript and XML) для взаимодействия с сервером. Раздел 7. «Интернационализация и локализация в Django» Этот раздел познакомит с основами интернационализации и локализации проектов Django. В нём рассказывается как отмечать строковые литералы исходного кода и шаблонов для перевода, как генерировать и компилировать файлы переводов. Так-же будет рассмотрен процесс установки и использования приложения Rosetta в свой проект, чтобы управлять переводами через его веб-интерфейс. Кроме этого будет рассмотрен процесс локализации шаблонов URL-адресов, и будет рассмотрен селектор языка, позволяющий пользователям переключать язык сайта. Раздел 8. «Создание чата на Django с использованием Сhannels и WebSocket» В этом разделе рассматривается использование Django Сhannels и WebSocket на примере приложения чата. Раздел 9. «Асинхронные задачи в Django + Сelery + Redis» Данный раздел познакомит с Celery и объяснит, зачем и как использовать Celery для запуска асинхронной задачи. Раздел 10. «Инфраструктура кэширования в Django» Этот раздел посвящён вопросам кэширования в Django, в нём будут рассмотрены различные виды и уровни кэша. На примере будет рассмотрена настройка и использование кэш-сервера Memcached, и различные варианты кэширования. Так-же будет рассмотрена проверка запросов к кэшу с помощью Django Debug Toolbar. Раздел 11. «Django + Docker» В этом разделе мы рассмотрим основные концепции Docker и на примере создадим свой контейнер с Python проектов. Далее мы упакуем Django, PostgreSQL, Memcache, NGINX в контейнеры, настроим работу статических и медиа файлов и подготовим проект к деплою. Раздел 12. «Деплой проекта через Docker» В этом разделе мы рассмотрим деплой проекта Django, вместе с базой данных PostgreSQL, веб сервером Gunicorn и Nginx на контейнерах Docker с Compose. Раздел 13. «Дополнительно» В данном разделе содержится краткое описание различных плагинов Django, которые могут существенно упростить разработку и расширить функционал разрабатываемых сайтов.
Требования

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

  • Обладать хорошими практическими знаниями Python и иметь знания HTML, SQL.
Результат

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

  • Работать с фреймворком Django
  • Понимать архитектуру MTV
  • Управлять URL
  • Создавать модели
  • Добавлять формы
  • Применять шаблоны Django
  • Подключать PostgreSQL в качестве БД
  • Работать с Django REST Framework и создавать API
  • Работать с ORM Django, мета-классами.
  • Создавать абстрактные модели.
  • Работать с менеджерами моделей.
  • Познакомимся с индексами базы данных PostgreSQL.
  • Создадим проект, используя метод разработки через тестирование.
  • Разберём права доступа в Django на уровне пользователей и групп.
  • Создадим проект используя технологию HTMX.
  • Познакомимся с основами интернационализации и локализации проектов.
  • Создадим асинхронный веб-чат с использованием Сhannels и WebSocket.
  • Научимся выполнять асинхронные задания с помощью Celery и Redis.
  • Рассмотрим различные виды и уровни кеша в Django.
  • Работать с Docker
Аудитория

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

  • Курс будет полезен для начинающих и продолжающих свою веб-разработку в Django.
Содержание

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

1 занятие
№ТемаЧто внутри
01Как начать учиться

- Что такое программа курсов

01Как начать учиться

- Что такое программа курсов

Организатор

Автор курса

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

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

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

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

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

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

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

Консультант ответит на вопросы о курсе «Разработка backend-приложений на Django: полный курс» и поможет разобраться в деталях обучения.

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

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

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

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

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

AI-first разработка на Python
−25%1 час
AI-first разработка на Python

Соберете и настроите свою профессиональную среду для разработки с агентами: от написания кода до ревью, автотестов и проверки безопасности.

Онлайн12 занятий
Домашние заданияИнтерактивные тренажёры+3
16 900 ₽−25%
12 600 ₽от 738 ₽/мес на 24 мес.
Python для инженеров
−45%2 месяца
Python для инженеров

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

Онлайн
52 421 ₽−45%
28 831 ₽от 9 610 ₽/мес на 3 мес.
Начать без затрат

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

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

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

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

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

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

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

Онлайн17 занятий
Бесплатно
Асинхронное программирование на основе веб - фреймворка FastAPI
Бесплатно
Асинхронное программирование на основе веб - фреймворка FastAPI

Курс «Асинхронное программирование на основе веб-фреймворка FastAPI»: онлайн и очное офлайн обучение в Москве в Бауманском учебном центре «Специалист». Стоимость обучения. Програм…

Онлайн
Бесплатно