Содержание курса
Создаем основу фреймворка и начальный функционал веб-приложения
1.1. Введение
1.2. Как работают wsgi-фреймворки
1.3. Как создать свой wsgi-фреймворк
1.4. Как реализовать связку маршрутов и обработчиков
1.5. Как настроить простейшую шаблонизацию
1.6. Как реализовать запуск проекта
1.7. Заключение
1.8. Материалы
Учим фреймворк обрабатывать GET- и POST-запросы
2.1. Введение
2.2. Как Разделить Get- И Post-Запросы
2.3. Обработка Get-Запроса
2.4. Обработка Post-Запроса
2.5. Заключение
2.6. Материалы
Учим фреймворк работать с наследованием шаблонов и подшаблонами
3.1. Введение
3.2. Как реализовать наследование шаблонов и подключение подшаблонов
3.3. Немного о языке шаблонов
3.4. Заключение
3.5. Материалы
Учим фреймворк работать с моделями сущностей
4.1. Введение
4.2. Что такое классы сущностей и для чего они нужны
4.3. Как создать контроллеры для работы с моделями
4.4. Добавляем привязку к маршрутам и добавляем шаблоны
4.5. Запуск приложения
4.6. Заключение
4.7. Материалы
Учим фреймворк выполнять привязку URL-шаблонов к обработчикам
5.1. Введение
5.2. Что такое маршрутизация
5.3. Как реализовать маршрутизацию через декоратор
5.4. Проверка работы приложения
5.5. Заключение
5.6. Материалы
Реализуем во фреймворке возможность написания обработчиков по CBV-подходу
6.1. Введение
6.2. Что такое встроенные классы-контроллеры (CBV)
6.3. Реализуем первый собственный встроенный класс-обработчик
6.4. Применяем первый собственный встроенный класс-обработчик
6.5. Реализуем второй собственный встроенный класс-обработчик
6.6. Применяем второй собственный встроенный класс-обработчик
6.7. Дополняем проект необходимыми шаблонами
6.8. Проверяем работу проекта
6.9. Заключение
6.10. Материалы
Реализуем во фреймворке упрощенную ORM
7.1. Введение
7.2. Что такое ORM-подход
7.3. Реализуем класс-посредник для ORM
7.4. Реализуем класс-реестр для ORM
7.5. Реализуем необходимую структуру базы данных
7.6. Реализуем класс для имодействия с базой данных
7.7. Проверка запуска приложения
7.8. Заключение
7.9. Материалы
Подключаем статику
8.1. Введение
8.2. Что такое статика
8.3. Дорабатываем шаблонизатор
8.4. Дорабатываем фреймворк
8.5. Настраиваем файл settings.py
8.6. Подключаем статику и проверяем работу
8.7. Заключение
8.8. Материалы
Создаем универсальный маппер
9.1. Введение
9.2. Для чего нужен универсальный маппер
9.3. Создаем универсальный маппер
9.4. Метод получения записи по идентификатору
9.5. Метод добавления записи в таблицу
9.6. Метод изменения записи в таблице
9.7. Метод удаления записи в таблице
9.8. Создаем мапперы классов-моделей
9.9. Дорабатываем классы-модели
9.10. Дорабатываем контроллеры для управления категориями
9.11. Дорабатываем контроллеры для управления студентами
9.12. Дополняем скрипт для создания таблиц базы данных
9.13. Проверяем работу приложения
9.14. Заключение
9.15. Материалы
Подключаем статику стандартными средствами, выводим локацию
10.1. Введение
10.2. О библиотеке WSGI_STATIC_MIDDLEWARE
10.3. Дорабатываем код фреймворка
10.4. Подключаем статику
10.5. Устраняем ошибки
10.6. Выводим информацию о локации пользователя
10.7. Заключение
10.8. Материалы
Оптимизируем обработку запросов
11.1. Введение
11.2. Реализуем общий класс-парсер и дорабатываем получение параметров запроса
11.3. Подключаем классы-обработчики к проекту
11.4. Проверяем работу проекта
11.5. Материалы
Реализуем передачу параметров через URL-адрес
12.1. Введение
12.2. Дорабатываем код модуля main.py
12.3. Добавляем модуль routing.py
12.4. Разбираем код метода routes_process. часть 1
12.5. Разбираем код метода routes_process. часть 2
12.6. Разбираем код метода get_view
12.7. Создаем тестовый контроллер
12.8. Проверяем работу проекта
12.9. Заключение
12.10. Материалы
Выполняем развертывание проекта
13.1. Введение
13.2. Создаем файл requirements.txt
13.3. Загружаем приложение на github. часть 1
13.4. Загружаем приложение на github. часть 2
13.5. Какой сервис хостинга выбрать
13.6. Регистрируемся на render.com
13.7. Создаем приложение на Render
13.8. Заключение
13.9. Материалы
Python-разработчик с 2014 года. Опыт преподавания - 7 лет. За время работы провел более 250 вебинарных потоков, обучил несколько тысяч студентов.