flask全局变量g属性

flask全局变量g属性 g:global g对象是专门用来保存用户数据的g对象在一次请求中的所有的代码的地方,都是可以使用的g对象发送第二次请求时,便会失

flask全局变量g属性

g:global

  1. g对象是专门用来保存用户数据的
  2. g对象在一次请求中的所有的代码的地方,都是可以使用的
  3. g对象发送第二次请求时,便会失效
  4. 示例代码
    主app文件正
from flask import Flask,g,request,render_template
from utils import login_log
app = Flask(__name__)@app.route('/')
def hello_world():return 'Hello World!'@app.route('/login/',methods=['GET','POST'])
def login():if request.method=='GET':return render_template('login.html')else:username=request.form.get('username')password=request.form.get('password')if username == 'zhiliao' and password=='123456':#就认为当前用户名和密码正确#记录用户等登录信息及状态g.username='zhiliao'g.ip='xxx'login_log()return u'恭喜您登录成功'else:return u'您的用户名或密码错误'return 'Hello World!'if __name__ == '__main__':app.run()
  • 前端视图中,index.html


登录


用户名:
密码:
  • utils.py中,用于存放登录日志
# utils.py
from flask import gdef login_log():print(u'当前登录用户是:%s' % g.username)def login_ip_log(ip):pass