1、导包顺序不对,报错

原因:
先实例化蓝图对象,再在views中添加视图函数,最好在 __init__.py 中将视图函数导入 init

正确代码如下:
application/ __init__.py
实例化蓝图
from flask import Blueprint
# 1、蓝图实例化
home_blu = Blueprint("home",__name__)
application/views.py
视图函数
from . import home_blu
# 2、视图函数
@home_blu.route("/se")
def se():
return "home视图"
application/ __init__.py
导入视图函数到 __init__ 中
from flask import Blueprint
home_blu = Blueprint("home",__name__)
# 3、导入视图函数到 __init__ 中
from .views import *
2、使用蓝图报错

参数 url_prefix = “/home”(参数表示蓝图前缀),地址前面要加斜杠

正确代码:
# encoding=utf-8
from flask import Flask
from applications import home_blu
app = Flask(__name__)
app.config["DEBUG"] = True
# 参数 url_prefix = “/home”(参数表示蓝图前缀),地址前面要加斜杠
app.register_blueprint(home_blu,url_prefix="/home")
if __name__ == '__main__':
app.run()
posted on
浙公网安备 33010602011771号