扩展(extension)即使用 Flask提供的API接口编写的Python库,可以为Flask程序添加各种各样的
功能。大部分Flask扩展用来集成其他库,作为Flask和其他库之间的薄薄一层胶水。因为Flask扩展的编写有一些约定,所以初始化的过程大致相似。大部分扩展都会提供一个扩展类,实例化这个类,并传入我们创建的程序实例app作为参数,即可完成初始化过程。通常,扩展会在传入的程序实例上注册一些处理函数,并加载一些配置。
以某扩展实现了Foo功能为例,这个扩展的名称将是Flask-Foo或Foo-Flask;程序包或模块的命名使用小写加下划线,即flask_foo(即导入时的名称);用于初始化的类一般为Foo,实例化的类实例一般使用
小写,即foo。初始化这个假想中的Flask-Foo扩展的示例如下所示:
from flask import Flask
from flask_foo import Foo
app = Flask(__name__)
foo = Foo(app)