Flask – 扩展

Flask 通常被称为微框架,因为其核心功能包括基于 Werkzeug 的 WSGI 和路由以及基于 Jinja2 的模板引擎。 此外,Flask 框架还支持 cookie 和会话以及 JSON、静态文件等 Web 帮助程序。显然,这对于开发成熟的 Web 应用程序来说是不够的。 这就是 Flask 扩展的用武之地。 Flask 扩展为 Flask 框架提供了可扩展性。

有大量的 Flask 扩展可用。 Flask 扩展是一个 Python 模块,它为 Flask 应用程序添加了特定类型的支持。 Flask Extension Registry 是可用扩展的目录。 所需的扩展可以通过 pip 实用程序下载。

在本教程中,我们将讨论以下重要的 Flask 扩展 −

  • Flask Mail − 为 Flask 应用程序提供 SMTP 接口

  • Flask WTF − 添加 WTForms 的渲染和验证

  • Flask SQLAlchemy − 向 Flask 应用程序添加 SQLAlchemy 支持

  • Flask Sijax − Sijax 接口 - 使 AJAX 易于在 Web 应用程序中使用的 Python/jQuery 库

每种类型的扩展通常都提供有关其用法的大量文档。 由于扩展是 Python 模块,因此需要导入它才能使用。 Flask 扩展通常被命名为 flask-foo。 要导入,

from flask_foo import [class, function]

对于 0.7 之后的 Flask 版本,还可以使用语法 −

from flask.ext import foo

对于这种用法,需要激活兼容模块。 它可以通过运行 flaskext_compat.py 安装

import flaskext_compat
flaskext_compat.activate()
from flask.ext import foo