作用:
1,使Flask项目更加模块化,结构更清晰
2,基本语法
i)在蓝图文件中导入 BluePrint
from flask import Blueprint
user_bp = Blueprint(‘user’,name,url_prefix=’/user’)
ii)在主app文件中注册蓝图
from blueprints.user import user_bp
app.register_blueprint(user_bp)
蓝图前有前缀,通过url_prefix 设置
Blueprint(‘user’,name,url_prefix=’/user’)
如上表示加上user
如果项目中的templates 文件夹中有相应的模板文件,就直接使用了
如果项目中的templates 文件夹中没有相应的模板文件,那么就在定义蓝图的
时候指定的路径中查找
news_bp = Blueprint(‘news’,name,url_prefix=’/news’,
template_folder=‘Eagle’)
蓝图中静态文件的查找规则
1,在模板文件,加载静态文件,如果使用url_for(‘static’) 那么就只会在app指定的静态
文件夹目录 下查找静态文件
2,如果在加载静态文件时,指定 的蓝图名字,比如"news.static" 那么就会
到这个蓝图指定的static_folder下查找静态文件
url_for 反转蓝图中的视图函数到url
1,如果使用蓝图,想反转蓝图视图函数为url,那么就应该在
使用url_for 的时候指定这个蓝图,比如:news.news_list
2,即使在同一个蓝图中反转视图函数,也要指定蓝图的名字