一、蓝图定义
如果我们将所有的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