一 .闪现
一 .什么是闪现
a 产生信息,传给 c 页面
但是用户访问a 页面以后,不是直接跳转到c,而是到b,或则是其他页面,但是用户访问c页面的时候,我希望把a给我的信息拿到
例如:假设在a页面操作出错,跳转到b页面,在b页面显示a页面的错误信息
二 使用
1.前提和注意点
1 如果要用flash就必须设置app.secret_key = 'asdfasdf' 2 在同一个路由视图函数中可以多次取值,但在一视图函数中取值过后再去另一个视图函数中在取就没有了 3 我们可以通过 flash('普通信息',category="i分类名"),对信息做分类 4get_flashed_messages(with_categories=True,category_filter("error",)) with_categories以键值对的形式获取;我们设置闪现,category_filter=("error",)进行分类信息的过滤
2.具体使用
from flask import Flask,flash,get_flashed_messages,request,redirect app = Flask(__name__) app.secret_key = 'asdfasdf' @app.route('/index1') def index(): #(category="message", message)) flash('超时错误',category="error") flash('普通信息',category="info") return "ssdsdsdfsd" # return redirect('/error') @app.route('/error') def error(): data1 = get_flashed_messages(with_categories=True,category_filter=("error","info")) data2 = get_flashed_messages() data3 = get_flashed_messages(with_categories=True) data4 = get_flashed_messages(category_filter=("error","info")) print("data1",data1) # data1 [('error', '超时错误'), ('info', '普通信息')] print("data2",data2) # data2 ['超时错误', '普通信息'] print("data3",data3) # data3 [('error', '超时错误'), ('info', '普通信息')] print("data4",data4) # data4 ['超时错误', '普通信息'] return "错误信息" if __name__ == '__main__': app.run()
二 请求扩展
链接:https://www.cnblogs.com/Hades123/p/11781182.html
1.before_request
类似于django中的process_request,在收到请求之后,进入视图函数之前,进行一些数据或者怎样的处理
- 可写多个before_request函数
- 从上往下执行的
- 一旦有返回值,请求的视图函数不会执行,已经剩下的before_request不会执行