Flask 扩展

 

1. Flask扩展

Flask通常被称为微框架,因为核心功能包括基于 Werkzeug 的WSGI和路由以及基于 Jinja2 的模板引擎。

此外,Flask框架还支持cookie和会话,以及 JSON ,静态文件等Web帮助程序。

显然,这不足以开发完整的Web应用程序。

Flask扩展就具备这样的功能 。 Flask扩展为Flask框架提供了可扩展性。

有大量的Flask扩展可用

Flask扩展是一个Python模块,它向Flask应用程序添加了特定类型的支持。

Flask Extension Registry(Flask扩展注册表)是一个可用的扩展目录。

可以通过 pip 实用程序下载所需的扩展名。

Flask常用扩展包:

Flask-SQLalchemy:操作数据库;

Flask-script:插入脚本;

Flask-migrate:管理迁移数据库;

Flask-Session:Session存储方式指定;

Flask-WTF:表单;

Flask-Mail:邮件;

Flask-Bable:提供国际化和本地化支持,翻译;

Flask-Login:认证用户状态;

Flask-OpenID:认证;

Flask-RESTful:开发REST API的工具;

Flask-Bootstrap:集成前端Twitter Bootstrap框架;

Flask-Moment:本地化日期和时间;

Flask-Admin:简单而可扩展的管理接口的框架

每种类型的扩展通常提供有关其用法的大量文档。

由于扩展是一个Python模块,因此需要导入它才能使用它。

Flask 的扩展通常命名为 “Flask-Foo” 或者 “Foo-Flask”。可以在 PyPI 搜索 标记为 Framework :: Flask 扩展包。

 

2. 使用扩展

请参阅每个扩展的文档以了解其安装、配置和使用说明。

一般来说,扩展从 app.config 获取其自身的配置并在初始化时传递给 应用实例。

例如,一个名为“ Flask-Foo ”的扩展使用如下:

from flask_foo import Foo

foo = Foo()
app = Flask(__name__)
app.config.update(
    FOO_BAR='baz',
    FOO_SPAM='eggs',
)

foo.init_app(app)

Flask 邮件 Flask-Mail:基于web的应用程序通常需要具有向用户/客户端发送邮件的功能。Flask-Mail 扩展使得与任何电子邮件服务器建立简单的接口变得非常容易。首先,应该在pip实用程序的帮助下安装Flask-Mail扩展。pip install Flask-Mail