Описание курса:
Flask - это крайне гибкий фреймворк для создания веб-проектов. Его отличительной особенностью является то, что он фактически не несет в себе каких-либо обязательных компонентов, кроме компонента роутинга Werkzeug, все остальное можно выбирать по своему желанию. Это дает ему колоссальную гибкость, которую можно использовать для создания крайне специализированных приложений. Удачного чтения!
Вопросы для самопроверки:
Сомневаешься, будет ли тебе полезен материал курса, или хочешь убедиться, что усвоил материал курса? Проверь свои знания с помощью вопросов для самопроверки по материалам курса.
- Что такое Flask?
- Что означает термин «микро» в контексте Flask?
- Как Flask позволяет добавлять дополнительный функционал?
- Для чего используется виртуальная среда при установке Flask?
- Как активировать созданную виртуальную среду в Linux и MacOS?
- Как вернуться к использованию глобального интерпретатора Python после работы в виртуальной среде?
- Как установить Flask в активированной виртуальной среде?
- Как можно проверить, что Flask установлен корректно?
- Какая команда используется для запуска Flask-приложения в виртуальном окружении Python?
- Что такое WSGI, и как оно связано с Flask-приложением?
- Как включить режим отладки в Flask-приложении?
- Что произойдет, если ввести URL, для которого не назначена функция-обработчик в Flask?
- Какие данные отображаются в консоли при ошибке выполнения кода Flask-приложения в выключенном режиме отладки?
- Какую концепцию использует Flask для временного размещения определенных глобальных переменных?
- Почему объект request в Flask не является глобальным в многопоточной среде?
- Для чего используется контекст приложения?
- Для чего предназначен объект g?
- Какие ошибки возникают при попытке использования объектов контекста вне функции представления?
- Какой HTTP статус и content-type назначаются по умолчанию, когда возвращается строка в Flask?
- Как можно добавить заголовки в ответ во Flask?
- Какой формат кортежей используется для формирования ответа в Flask?
- Для чего используется функция redirect() в Flask, и какой статус она создает по умолчанию?
- Какие декораторы предоставляет Flask для выполнения действий до или после обработки запроса?
- Что такое шаблон в контексте Flask?
- В каком каталоге по умолчанию Flask ищет файлы шаблонов? Как можно изменить поведение по умолчанию?
- Какая функция во Flask используется для рендеринга шаблонов?
- Как можно передать множество параметров в функцию render_template()?
- Каким образом в Jinja можно вызывать функции?
- Как можно оставить комментарий в шаблоне Jinja?
- Как в Jinja можно одновременно использовать несколько фильтров?
- Какие конструкции используются в Jinja для создания условных выражений и циклов?
- В чем заключается принцип наследования шаблонов в Jinja?
- Для чего используется функция url_for() в Flask?
- Какие параметры необходимо указать при вызове функции url_for()?
- Как создать абсолютный URL с помощью url_for()?
- Как добавить динамические компоненты к URL при помощи url_for()?
- Как можно использовать url_for() в шаблонах Flask?
- Какие файлы называются статическими в контексте Flask?
- Где Flask по умолчанию ищет статические файлы?
- Чем отличается подход к работе со статическими файлами в разработке и в полномасштабном приложении?
- Что такое Flask-Script и какие задачи он упрощает?
- Для чего используется команда runserver в Flask-Script?
- Как активировать отладчик при запуске сервера с помощью Flask-Script?
- Что позволяет делать команда shell в контексте Flask-Script?
- Как работает декоратор @command в Flask-Script?
- Какие угрозы безопасности необходимо учитывать при работе с формами во Flask?
- Какая библиотека облегчает обработку форм во Flask и что она может делать?
- Какой тип данных используется для хранения данных формы в объекте request?
- Что такое SECRET_KEY в контексте Flask и какие функции он выполняет?
- Как можно проверить валидность формы в консоли Python и каковы возможные результаты этой проверки?
- Как использовать функцию flash() для отображения сообщений о выполнении действий на странице во Flask?
- Какую функцию выполняет метод `set_cookie()` во Flask?
- Как проверить наличие и значение куки в Flask-приложении?
- Как удалить куки в Flask?
- Что произойдет, если пользователь отключит использование куки в браузере?
- Какое ограничение существует на размер и количество куки?
- Какую роль играет объект session из пакета flask в работе с сессиями?
- Что отличает сессионные куки Flask от обычных куки?
- Какие расширения могут быть использованы для работы с клиентскими сессиями во Flask?
- Как можно продлить срок действия сессионных куки во Flask?
- Почему важно удалить куки, установленные локальным хостом, прежде чем вносить изменения в данные сессии?
- Что делает Flask-SQLAlchemy?
- то такое DBAPI и для чего оно используется?
- Приведи пример URI для подключения к база данных MySQL с использованием драйвера PyMysql.
- Что представляет собой модель в контексте SQLAlchemy и как она создается?
- Как создается отношение один-ко-многим в SQLAlchemy?
- Как реализовать отношение многие-ко-многим с использованием db.Table() в SQLAlchemy?
- Как можно получить доступ к сессии в SQLAlchemy при использовании Flask-SQLAlchemy?
- Как можно сохранить изменения в базе данных при работе с SQLAlchemy?
- Какие методы используются для ограничения количества строк результатов и сортировки их?
- Как метод first_or_404() отличается от метода first()?
- Как создать новую таблицу в базе данных с помощью SQLAlchemy?
Программа курса:
- Описание курса
- Что такое Flask? Начните с основ
- Настройка виртуальной среды и установка flask
- Запуск первого приложения на Flask
- Управление контекстами во Flask
- Создание ответов сервера во Flask
- Введение в шаблоны Flask с Jinja
- Работа с шаблонизатором Jinja в Flask
- Создание URL во Flask с функцией url_for()
- Управление статическими файлами в Flask
- Полезные расширения для Flask
- Работа с формами в Flask: от основ до WTForms
- Как работают куки в веб-приложениях Flask
- Основы работы с сессиями во Flask
- Создание баз данных с Flask и SQLAlchemy
- Добавление данных в базу через Flask-SQLAlchemy