Flask 简明教程

Flask – Extensions

Flask 通常被称为微框架,因为它包括的核心的功能是基于 Werkzeug 的 WSGI 和路由,以及基于 Jinja2 的模板引擎。此外,Flask 框架支持 cookie 和会话,以及像 JSON 这样的 Web 帮助器、静态文件等。显然,这不足以开发一个功能齐全的 Web 应用程序。这意味着 Flask 扩展出现在了眼前。Flask 扩展为 Flask 框架提供可扩展性。

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

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

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

  2. Flask WTF − 添加 WTForms 的呈现和验证

  3. Flask SQLAlchemy − 为 Flask 应用程序添加 SQLAlchemy 支持

  4. Flask Sijax − Sijax 的接口 - Python/jQuery 库,使用户可以在 web 应用程序中轻松地使用 AJAX

每种类型的扩展通常会提供关于其使用情况的详尽文档。由于扩展是一个 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