Python. Веб программирование на Django.

Django - свободный фреймворк для веб-приложений на языке Python, использующий шаблон проектирования MTV. Проект поддерживается организацией Django Software Foundation. Сайт на Django строится из одного...

Описание курса:

Django - свободный фреймворк для веб-приложений на языке Python, использующий шаблон проектирования MTV. Проект поддерживается организацией Django Software Foundation. Сайт на Django строится из одного или нескольких приложений, которые рекомендуется делать отчуждаемыми и подключаемыми. Это одно из существенных архитектурных отличий этого фреймворка от некоторых других (например, Ruby on Rails). Также, в отличие от других фреймворков, обработчики URL в Django конфигурируются явно при помощи регулярных выражений. Для работы с базой данных Django использует собственный ORM, в котором модель данных описывается классами Python, и по ней генерируется схема базы данных.


Цель курса:

Научиться работать с готовой HTML/CSS версткой, создавать веб приложения любой сложности начиная от простого блока и заканчивая интернет магазином, научиться аутентифицировать и регистрировать пользователей, управлять содержимым сайта. Создавать высоконагруженные сайты и приложения на фреймворке Django.

Требование для слушателей:

  • свободное владение основами языка Python;
  • умение работать с шаблонизатором Jinja2;
  • знание основ базы данных и умение писать простые SQL запросы;
  • умение развертывать любую из реляционныx баз данных (postgresql, mariadb, mysql);
  • знание основ HTML и CSS;
  • преимуществом будет умение работать с аналогичными фраимворками.
  Освоение предмета будет существенно облегченно и курс даст отличный результат если:
  • выполнять все домашнее задания;
  • искать дополнительную информацию в документации.

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

  • введение в веб программирование;
  • шаблонизатор Jinja2;
  • введение в Django;
  • паттерны проектирования, MTV;
  • проектирование моделей;
  • панель администратора;
  • основы Django ORM;
  • маршрутизация запросов (urls);
  • обработка запросов, HTTP ответ;
  • шаблоны (работа с готовой HTML версткой);
  • контроллеры-функции (Function based view);
  • контроллеры-классы (Classed based view);
  • аутентификация и авторизация пользователей;
  • избранные товары/статьи на сайте;
  • рекомендуемые товары/статьи на сайте;
  • комментарий к статьям/товарам на сайте;
  • подключение корзины и платёжные системы;
  • фильтрация/сортировка/поиск/пагинация на сайте;
  • Email – рассылщик;
  • реализация мультиязычного сайта;
  • введение в Django REST framework;
  • настройка аутентификации JWT;
  • установка и настройка Swagger;
  • настройка кеширования;
  • выполнение фоновых задач;
  • выполнение задач по расписанию;
  • запуск проекта на продакшн сервере под управлением ОС Linux.