English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Расширения Flask

Flask обычно называют микрорамкой, так как ее ядро включает в себя WSGI и маршрутизация на основе Werkzeug, а также шаблонный движок на основе Jinja2. Кроме того, фреймворк Flask поддерживает куки и сеансы, а также веб-ассистенты, такие как JSON, статические файлы и т.д. Понятно, что этого недостаточно для разработки полных веб-приложений. Поэтому и существуют расширения для Flask. Расширения Flask предоставляют расширяемость фреймворку Flask.

Flask имеет множество расширений. Flask расширение - это модуль Python, который добавляет специфическую поддержку к приложению Flask. Регистр расширений Flask - это каталог доступных расширений. Необходимые расширения можно загрузить с помощью实用ной программы pip.

В этом учебнике мы будем обсуждать следующие важные расширения Flask -

Flask Mail − Обеспечение интерфейса SMTP для приложений Flask Flask WTF − Добавление поддержки рендеринга и валидации WTForms Flask SQLAlchemy − Добавление поддержки SQLAlchemy к приложению Flask Flask Sijax − Интерфейс Sijax - упрощает использование библиотек Python/jQuery для AJAX в веб-приложениях

Каждый тип расширения обычно предоставляет的大量 документации о его использовании. Поскольку расширение является модулем Python, его необходимо импортировать, чтобы использовать его. Имя расширения Flask обычно命名为 flask-foo. Грамматика импорта выглядит следующим образом,

# Filename: example.py
# Copyright: 2020 By w3codebox
# Author by: ru.oldtoolbag.com
# Date: 2020-08-08
from flask_foo import [class, function]

Для версий Flask ниже 0.7 можно использовать синтаксис -

# Filename: example.py
# Copyright: 2020 By w3codebox
# Author by: ru.oldtoolbag.com
# Date: 2020-08-08
from flask.ext import foo

Для этого необходимо активировать модуль совместимости. Его можно установить, запустив flaskext_compat.py -

# Filename: example.py
# Copyright: 2020 By w3codebox
# Author by: ru.oldtoolbag.com
# Date: 2020-08-08
import flaskext_compat
 flaskext_compat.activate()
 from flask.ext import foo