一、蓝图定义
如果我们将所有的Flask的请求方法都写在同一个文件下的话,非常的不便于我们的代码的管理和后期的功能代码的添加,简单来说蓝图就是实现一个模块化。
二、基本使用
1.新建目录views,在views文件夹中创建模块user,user代码如下
# 第一步:导入蓝图
from flask import Blueprint
# 第二步:实例化user_bt蓝图类 url_prefix ==> 指定url前缀
user_bt = Blueprint('user',__name__,url_prefix='/u')
# 第三步:写视图函数
@user_bt.route('/profile/')
def Profile():
return '个人中心'
@user_bt.route('/settings/')
def settings():
return '设置页面'
2.在app中注册蓝图
from flask import Flask
"""
用户模块 ===》user_bt
新闻模块
"""
# 第四步:导入模块
from view import user,news
# 第五步:注册蓝图到app中
app.register_blueprint(user.user_bt)
app.register_blueprint(news.news_bt)
@app.route('/')
def index():
return '首页'
if __name__ == '__main__':
app.run()
3.模板路径
# 第二步:实例化user_bt蓝图类 url_prefix ==> 指定url前缀
user_bt = Blueprint(
'user',
__name__,
url_prefix='/u',
# 指定模板路径:默认在当前user.py文件路径
# 1、如果不设置参数则找template文件夹
# 2、如果相同名字的html在template和指定路径中同时存在,则以tempalte优先
template_folder='../page/'
)
# 第三步:写视图函数
@user_bt.route('/profile/')
def Profile():
return render_template('profile.html')
来源:https://www.cnblogs.com/lee-xingxing/p/12365101.html