00:00

文章目录

加载目录中...

Flask工厂函数创建使用

工厂函数是Flask中一种常用的应用组织模式,它通过一个函数来创建和配置Flask应用实例,这种方式提供了更大的灵活性和更好的可测试性。其本质是将flask应用实例的创建和配置代码分离出来,让启动文件中引用创建函数即可,让启动文件app.py变得整洁,让应用实例的配置测试变得方便。

在项目根目录下创建一个名为app的python包。在此包的__init__.py文件中编写工厂函数。函数命名为create_app(),在此函数中创建flask应用实例。代码如下:

from flask import Flask
from .photo.view import photo_bp
from .user.view import user_bp
from .article.view import article_bp
from .exts import db, mail, migrate
from config import Config
​
​
def create_app():
    app = Flask(__name__, template_folder='../templates', static_folder='../static')
    # 加载配置文件
    app.config.from_object(Config)
    # 初始化db对象
    db.init_app(app)
    # 数据库迁移配置
    migrate.init_app(app, db)
    # 邮箱配置
    mail.init_app(app)
    # 注册蓝图
    app.register_blueprint(user_bp)
    app.register_blueprint(article_bp)
    app.register_blueprint(photo_bp)
    return app

__init__.py文件中定义完成工厂函数后,在启动文件app.py中导入,如下:

from app import create_app
​
app = create_app()
​
if __name__ == '__main__':
    app.run
返回文章列表

评论区 0