【Flask】蓝图

蓝图应用

在Flask中的蓝图 blueprint其实本质上就是将应用解耦,不同的应用分别放在不同的文件内

蓝图一

复制代码
from flask import Blueprint,render_template

user = Blueprint("user",__name__,template_folder="tmp") # 参数user表示蓝图唯一标识不能重复,实例化一个蓝图(Blueprint)对象

@user.route("/user",methods=["GET","POST"])
def get_user():
    return  render_template("blue.html")

# 蓝图中没有config配置,不能run
复制代码

蓝图二

复制代码
from flask import Blueprint,render_template

uses = Blueprint("uses",__name__) # 参数user表示蓝图唯一标识不能重复,实例化一个蓝图(Blueprint)对象

@uses.route("/uses",methods=["GET","POST"])
def get_user():
    return  "hello Blueprint"

# 蓝图中没有config配置,不能run
复制代码

主程序代码

复制代码
from flask import Flask
from serv.users import user  # 导入蓝图对象
from use.uses import uses
app = Flask(__name__)
# 注册蓝图
app.register_blueprint(user)
app.register_blueprint(uses)


if __name__ == '__main__':
    app.run()

# 主应用内可以注册多个蓝图,注意自己在蓝图内区分url,如果未区分请求路径那么只能访问到注册时的第一个蓝图
复制代码

蓝图中的初始化配置

复制代码
static_folder=None,  # 静态文件存放路径
static_url_path=None, # 静态文件访问路径
template_folder=None, # 模板存放目录
url_prefix=None,  # 区分访问路径
subdomain=None,
url_defaults=None, 
root_path=None,
cli_group=_sentinel,
复制代码
uses = Blueprint("uses",__name__,url_prefix="/aa")

# 用来区分访问路径
原文地址:https://www.cnblogs.com/youxiu123/p/11624295.html