蓝图
2023年8月3日小于 1 分钟
概念
Blueprint
是一种组织一组相关视图及其他代码的方式。
类似于django
的子应用,把功能相似的代码组织在一起,使用蓝图管理,最后在 工厂函数中注册蓝图即可。
流程
代码结构
├── app.py # 项目的入口文件,需要将蓝图导入,并注册
└── book # 创建的python包
├── __init__.py # 在此创建蓝图,管理其余代码
└── views.py # 视图
视图
book/views.py
from flask import jsonify
def book_list():
return jsonify(['图书1', '图书2'])
蓝图创建
book/__init__.py
from flask import blueprints
from .views import *
book = blueprints.Blueprint('book', __name__, url_prefix='')
# 对视图配置路由
book.add_url_rule('book/list/', view_func=book_list)
主APP
app.py
from flask import Flask
from book import book # 从book包中导入名叫book的蓝图对象
app = Flask(__name__)
app.config['DEBUG'] = True
app.register_blueprint(book) # 注册蓝图对象
if __name__ == '__main__':
app.run()