Flask中g对象,以及g,session,flash之间的区别
一.g对象的使用
g对象用来专门存储用户信息,g的全称的为global
g对象在一次请求中的所有的代码的地方,都是可以使用的
g对象的使用:
- 设置:g.变量名= 变量值
- 获取:g.变量名
注意:g对象比如说在a路由设置只能在a路由中取到g对象,在b路由中没法获得g对象
from flask import Flask,g app = Flask(__name__) @app.after_request def af(res): print(g.name) print("after...") return res @app.route("/") def index(): g.name = "tank" return "ok" @app.route("/index") def index1(): print(g.name) return "ok1" if __name__ == '__main__': app.run() # 请求访问了/ 路由可以拿到g.name ,但是在其他请求如/index 里面就拿不到g.name 了
二.g,session,flash之间的区别
session
只要设置,在任意请求中都能拿到,无论你拿多少次flash
一旦设置,可在任意一次请求中获取,但是只能取一次g
在A路由中设置,只能在A路由请求中请求中获取,其它的请求都不能获取