Flask 提供了 Blueprint (蓝图) 的功能,让我们可以实现模块化的应用。使用它主要有以下好处:
- 将一个复杂的大型应用分解成若干蓝图的集合,也就是若干个子应用或者说模块,每个蓝图都包含了可以作为独立模块的视图、模板和静态文件等;
- 制作通用的组件,使开发者更易复用组件;
1、创建蓝图对象
from flask import Blueprint
book_bp = Blueprint('book', __name__)
Blueprint 要求至少传入两个参数,第一个参数是蓝图的名称,第二个参数是蓝图所在的包或模块,其他参数是可选的,比
如 template_folder , url_prefix 和 static_folder 等。
2、在蓝图中使用路由
# book_bp 就是我们创建的蓝图对象
@book_bp.route('/book/<name>')
3、在app.py中注册
from flask import Flask
from book import book_bp
app = Flask(__name__)
# 注册蓝图
app.register_blueprint(book_bp)