Flask 扩展
Flask通常被称为微型框架,因为它的核心功能包括基于WSGI的路由功能,以及基于 Werkzeug 和 Jinja2 的模板引擎。此外,Flask框架还具有对Cookie和会话的支持,以及对 JSON 、静态文件等Web助手的支持。显然,这对于开发一个完整的Web应用程序来说是不够的。这就是Flask扩展的作用。Flask扩展为Flask框架提供了可扩展性。
有大量的Flask扩展可供选择。Flask扩展是一个Python模块,它为Flask应用程序添加了特定类型的支持。Flask扩展注册表是一个可用扩展的目录。需要的扩展可以通过 pip 工具下载。
在本教程中,我们将讨论以下重要的Flask扩展:
- Flask Mail - 为Flask应用程序提供SMTP接口
-
Flask WTF - 添加WTForms的渲染和验证
-
Flask SQLAlchemy - 为Flask应用程序添加SQLAlchemy支持
-
Flask Sijax - 为Sijax提供接口 – Python/jQuery库,使AJAX在Web应用程序中易于使用
每种类型的扩展通常都提供了关于其使用方法的详细文档。由于扩展是一个Python模块,需要导入才能使用。Flask扩展通常以flask-foo的形式命名。要导入扩展,可以使用以下语法:
from flask_foo import [class, function]
对于 Flask 0.7 之后的版本,你也可以使用以下语法:
from flask.ext import foo
对于这种用法,需要激活一个兼容性模块。可以通过运行flaskext_compat.py来安装。
import flaskext_compat
flaskext_compat.activate()
from flask.ext import foo