当前位置:网站首页>[pytho-flask笔记5]蓝图简单使用
[pytho-flask笔记5]蓝图简单使用
2022-07-23 05:38:00 【bigdata王一】
蓝图:
flask自带的模块,容器,存储了一组将来在程序上执行的操作,不能独立运行。可以有自己的静态文件和模板等;
类似于django中的子应用;
蓝图多文件使用:容易发生循环导入的问题
除了最基本的三步以外,必须把使用蓝图对象的视图文件,导入到创建蓝图对象的文件中
蓝图最简单案例-三步
from flask import Flask,Blueprint
# 蓝图使用步骤
#1 创建蓝图对象
#2 定义蓝图路由
#3 注册蓝图对象
app = Flask(__name__)
#1 创建蓝图对象
bp = Blueprint('bp',__name__)
#2 定义蓝图路由
@bp.route("/users")
def get_user():
return 'users ..'
@app.route("/")
def index():
return "hi"
#3 注册蓝图对象
app.register_blueprint(bp)
if __name__ == '__main__':
print(app.url_map)
app.run(debug=True)
多文件蓝图注意import导包死锁
目录结构:
不能同时互相导入对方的包,就像夹菜俩人一起夹菜,谁也没夹起来……程序报错importErro……
多文件在ini的py文件创建蓝图。在类的py文件写route路由(定义蓝图路由)。在调用的时候注册蓝图。启动后可以使用
多文件使用,必须把使用蓝图对象的视图文件,导入到创建蓝图对象的文件中
init.py
from flask import Blueprint
#创建蓝图
news_bp = Blueprint('news_bp',__name__)
#必须把使用蓝图对象的视图文件,导入到创建蓝图对象的文件中
from . import views
views.py
from . import news_bp
@news_bp.route("/news")
def get_news():
return "news demo .."
@news_bp.route("/user")
def get_user():
return "user 666"
bluePrint.py
from flask import Flask,Blueprint
app = Flask(__name__)
from news import news_bp
#注册蓝图对象
app.register_blueprint(news_bp)
@app.route("/")
def index():
return 'hi'
if __name__ == '__main__':
print(app.url_map)
app.run(debug=True)
效果图:
边栏推荐
猜你喜欢
随机推荐
2.启动函数返回值的剖析
混入视图基类
手风琴效果
十年架构五年生活-02第一份工作
Activiti工作流使用之流程结构介绍
请求数据获取与响应
Single sign on - how to unify the expiration time of session between authentication server and client
sprintboot中使用缓存时候,数据加载不出来
Detailed explanation of structure
使用聚类分析 构建信用卡高风险客户识别模型
check the manual that corresponds to your MySQL server version for the right syntax to use near ‘ord
【无标题】
JDBC learning and simple encapsulation
Briefly describe the features and application scenarios of redis
Anr error encountered
Updated again, idea 2022.2 officially released
3. Threads in flask
pyspark学习笔记
Gerrit 使用操作手册
给图片人脸部分加上马赛克









