Django & FastAPI

Курс Django & FastAPI — Prowid
Длительность курса
3 мес/ 24 урока
Индивидуально
В мес 200 AZN
В группе
В мес 150 AZN
При оплате за весь курс в группе
15% скидка
Оплата по частям
50/50
По подписке
от 30 AZN в мес
Django и FastAPI — самые популярные фреймворки для создания веб-приложений и API на Python. Для курса нужны знания Python.

Идёт набор в новую группу — оставьте заявку, чтобы забронировать место

Или учитесь сами в личном кабинете → по подписке от 30 AZN в месяц

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

Введение в Django: проект, приложения, архитектура MVT
URL, представления и шаблоны
Модели, Django ORM и миграции
Django Admin
Формы и валидация
Аутентификация и права доступа
Статические и медиафайлы
Django REST Framework: сериализаторы и viewsets
JWT-аутентификация и документирование API
Фоновые задачи: Celery и Redis
Введение в FastAPI: маршруты, Pydantic, автоматическая документация Swagger
FastAPI: асинхронные эндпоинты и dependency injection
FastAPI + SQLAlchemy + PostgreSQL
Тестирование: pytest
Деплой: Docker, Gunicorn/Uvicorn, Nginx
Финальный проект: приложение на Django и сервис на FastAPI
Как мы учим?

Этапы обучения

01

Вебинар

Студенты подключаются к уроку в прямом эфире. В конце каждого урока студентам отправляется видеозапись занятия.

02

Домашнее задание

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

03

Работа с ментором

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

04

Портфолио

За время курса вы выполните несколько проектов на разные темы — они покажут работодателям ваши навыки.

Самостоятельное обучение

Полная программа в личном кабинете

140 тем с теорией, примерами и практикой. Первые 4 — бесплатно, остальные — по подписке. Интерактивных уроков со слайдами и тренажёрами: 111.

Введение в Djangoтем: 5
  1. Как работает веб: HTTP, клиент–сервер и роль веб-фреймворка
  2. Django и архитектура MTV: путь запроса от URL до ответа
  3. Установка Django 5 и первый проект: venv, startproject, runserver
  4. Приложения Django: startapp и первая страница
  5. Настройки проекта: settings.py, .env и разные окружения
URL, представления и шаблонытем: 9
  1. Маршрутизация: path(), include() и конвертеры параметров
  2. Имена маршрутов, пространства имён и reverse()
  3. HttpRequest и HttpResponse: данные запроса, JSON и редиректы
  4. Шаблоны: настройка TEMPLATES, render() и контекст
  5. Теги и фильтры шаблонов: if, for, url, date, default, safe
  6. Наследование шаблонов: extends, block и include
  7. Статические файлы: CSS, JS и изображения через {% static %}
  8. Свои теги, фильтры и контекстные процессоры
  9. Проект: многостраничный сайт компании на шаблонах Django
Модели и миграциитем: 5
  1. Модели и ORM: первая модель и подключение PostgreSQL
  2. Поля модели и их параметры: null, blank, default, choices
  3. Класс Meta: сортировка, индексы и ограничения (constraints)
  4. Методы модели: __str__, get_absolute_url, свойства и save()
  5. Миграции: makemigrations, migrate, откат и миграции данных
ORM: запросы к базе данныхтем: 5
  1. QuerySet: all, filter, exclude, get, сортировка и ленивость
  2. Создание, изменение и удаление записей: save, update, bulk_create
  3. Lookups и Q-объекты: сложные условия фильтрации
  4. F-выражения и функции БД: F, Case/When, Concat, Coalesce
  5. Транзакции: atomic, on_commit и select_for_update
Связи моделей, агрегация и Django Adminтем: 9
  1. ForeignKey и OneToOneField: связи, on_delete и related_name
  2. ManyToManyField и промежуточная модель through
  3. Агрегация и группировка: aggregate, annotate, values
  4. Проблема N+1: select_related, prefetch_related, only и defer
  5. Свои менеджеры и QuerySet: переиспользуемые запросы
  6. Наследование моделей: абстрактные, multi-table и proxy
  7. Django Admin: регистрация моделей и настройка списка
  8. Продвинутая админка: inlines, actions, фильтры и autocomplete
  9. Проект: каталог библиотеки — модели, связи, админка и отчёты
Представления на классах и формытем: 9
  1. Class-based views: View, TemplateView, миксины и MRO
  2. ListView и DetailView: списки и страницы объектов
  3. Пагинация и поиск: Paginator, GET-параметры и SearchVector
  4. Формы Django: класс Form, поля, виджеты и обработка POST
  5. Валидация форм: clean_<field>, clean() и валидаторы
  6. ModelForm: формы из моделей и save(commit=False)
  7. CreateView, UpdateView, DeleteView и сообщения (messages)
  8. Наборы форм: formset_factory и inlineformset_factory
  9. Загрузка файлов и изображений: FileField, ImageField, media
Аутентификация и права доступатем: 6
  1. Аутентификация: User, login, logout и LoginRequiredMixin
  2. Своя модель пользователя: AbstractUser и вход по email
  3. Регистрация и восстановление пароля
  4. Права, группы и доступ к своим объектам
  5. Сессии и cookies: request.session и настройки
  6. Проект: блог на Django
Продвинутые возможности Djangoтем: 8
  1. Middleware: цепочка обработки запроса и своё middleware
  2. Сигналы: post_save, pre_delete и свои сигналы
  3. Кэширование с Redis: cache_page, кэш фрагментов и cache API
  4. Отправка email: send_mail, HTML-письма и SMTP
  5. Интернационализация: gettext, {% translate %} и файлы .po
  6. Мультиязычный сайт az/ru/en: i18n_patterns и переключатель языка
  7. Безопасность Django: CSRF, XSS, SQL-инъекции и clickjacking
  8. Проект: интернет-магазин с корзиной
Тестирование Django-проектовтем: 5
  1. Тесты в Django: TestCase, тестовая база и тестовый клиент
  2. pytest-django: фикстуры, маркеры и параметризация
  3. Тестовые данные: factory_boy и Faker
  4. Моки и покрытие: unittest.mock, тесты email и coverage.py
  5. Проект: покрытие интернет-магазина тестами
Django REST Frameworkтем: 12
  1. REST API и Django REST Framework: принципы и первый эндпоинт
  2. Сериализаторы DRF: Serializer, поля и валидация
  3. ModelSerializer: вложенные сериализаторы и вычисляемые поля
  4. APIView и generic-представления DRF
  5. ViewSet, ModelViewSet и роутеры
  6. Аутентификация в DRF: Token и JWT (simplejwt)
  7. Права доступа в DRF: встроенные и свои permission-классы
  8. Фильтрация, поиск, сортировка и пагинация в DRF
  9. Throttling, версионирование и CORS
  10. Документация API: drf-spectacular и Swagger UI
  11. Тестирование API: APIClient и pytest
  12. Проект: REST API с DRF и JWT
Celery и асинхронный Djangoтем: 5
  1. Celery и Redis: настройка и первая фоновая задача
  2. Задачи Celery на практике: apply_async, повторы и on_commit
  3. Периодические задачи: Celery Beat и мониторинг Flower
  4. Асинхронный Django: async views, ASGI и обзор Channels
  5. Проект: фоновые уведомления и отчёты на Celery
FastAPI: основы и Pydantic v2тем: 10
  1. Зачем FastAPI: ASGI, async и аннотации типов
  2. Первое приложение FastAPI: установка, uvicorn и Swagger UI
  3. Path operations и path-параметры: методы, типы и Enum
  4. Query-параметры: значения по умолчанию, списки и валидация Query
  5. Заголовки, cookies, формы и объект Request
  6. Pydantic v2: BaseModel, типы, Field и сериализация
  7. Тело запроса: Pydantic-модели, вложенные модели и Body
  8. Валидация в Pydantic v2: field_validator, model_validator, Annotated-типы
  9. Модели ответа и коды статуса: response_model и схемы In/Out
  10. Проект: API менеджера задач на FastAPI
Архитектура и возможности FastAPIтем: 10
  1. Dependency Injection: Depends, Annotated и классы-зависимости
  2. Зависимости с yield, глобальные зависимости и dependency_overrides
  3. APIRouter и структура проекта: модули, префиксы, теги
  4. Настройки через pydantic-settings и lifespan приложения
  5. Обработка ошибок: HTTPException и свои обработчики исключений
  6. Middleware и CORS в FastAPI
  7. Фоновые задачи: BackgroundTasks и когда нужен Celery
  8. Загрузка и отдача файлов: UploadFile, StaticFiles, FileResponse
  9. WebSockets в FastAPI: чат и менеджер подключений
  10. Документация OpenAPI: метаданные, теги, примеры и настройка /docs
FastAPI и базы данных: SQLAlchemy 2.0 и Alembicтем: 8
  1. SQLAlchemy 2.0: engine, Session и подключение к PostgreSQL
  2. Модели SQLAlchemy 2.0: DeclarativeBase, Mapped и mapped_column
  3. Запросы в стиле 2.0: select(), where, join и scalars
  4. Связи в SQLAlchemy: relationship, back_populates, selectinload
  5. Асинхронный SQLAlchemy: AsyncSession, asyncpg и async_sessionmaker
  6. FastAPI + SQLAlchemy: сессия БД через Depends
  7. Миграции Alembic: init, autogenerate, upgrade и downgrade
  8. CRUD-слой и репозитории: разделение схем, моделей и логики
Авторизация, тесты и async в FastAPIтем: 8
  1. Хеширование паролей и регистрация пользователей
  2. OAuth2 password flow: OAuth2PasswordBearer и эндпоинт токена
  3. JWT в FastAPI: создание и проверка токена, get_current_user
  4. Авторизация: роли, проверка владельца и scopes
  5. Тестирование FastAPI: pytest и TestClient
  6. Асинхронные тесты: httpx.AsyncClient, тестовая БД и транзакции
  7. Async на практике: блокирующий код, gather и httpx
  8. Проект: CRUD-сервис на FastAPI + PostgreSQL с авторизацией
Docker, деплой и финальный проекттем: 7
  1. Docker для Django и FastAPI: Dockerfile и .dockerignore
  2. docker compose: PostgreSQL, Redis, Celery и приложение
  3. Продакшн-серверы: gunicorn, uvicorn и статические файлы
  4. Nginx как reverse proxy и HTTPS: деплой на VPS
  5. CI на GitHub Actions: тесты, линтер и сборка Docker-образа
  6. Django или FastAPI: сравнение и выбор под задачу
  7. Финальный проект: Django-приложение и FastAPI-сервис
Django для продакшена: вход, логи и мониторингтем: 7
  1. Социальный и email-вход: django-allauth
  2. Свои management-команды: BaseCommand
  3. Логирование в Django: LOGGING, JSON и окружения
  4. Отслеживание ошибок через Sentry
  5. SEO-ленты: sitemap, RSS и robots.txt
  6. Полнотекстовый поиск PostgreSQL: SearchVector, SearchRank и trigram
  7. GeoDjango и PostGIS: точки, расстояния и карта
Интеграция фронтенда, CMS и профилированиетем: 4
  1. htmx и Django: частичные шаблоны, hx-get/post/swap, формы, CSRF, бесконечная прокрутка
  2. Tailwind и Crispy Forms: django-tailwind, crispy-tailwind, рендер форм, кастомизация виджетов
  3. Wagtail CMS: модели страниц, блоки StreamField, шаблоны, изображения и документы, поиск, headless API
  4. Debug Toolbar и профилирование запросов: SQL-панель, N+1, nplusone/silk, queryset.explain()
Django вглубь и расширения FastAPIтем: 4
  1. Свои поля моделей и сырой SQL: Field, lookup, raw()
  2. Матрица тестов: tox, nox, pytest-django, coverage и CI
  3. SQLModel во FastAPI: модели таблиц и схем, CRUD, связи, Alembic
  4. GraphQL со Strawberry во FastAPI: типы, mutation, DataLoader, subscription
Безопасность, тесты и развёртываниетем: 4
  1. E2E для Django: pytest-django, pytest-playwright, live_server, состояние авторизации и CI
  2. Платежи Stripe в Django
  3. Production-деплой Django
  4. Чек-лист безопасности Django (OWASP): встроенная защита, check --deploy, IDOR и перебор паролей

Группа и индивидуальные занятия — это преподаватель, проверка заданий и сертификат. Подписка — материалы, тренажёры и прогресс в своём темпе, без обратной связи преподавателя.

Курс Django & FastAPI: как записаться

Заполните форму — сообщим дату старта ближайшей группы, расписание и условия оплаты. А можно сначала прийти на бесплатный пробный урок.

WhatsApp