zoukankan      html  css  js  c++  java
  • 六十九:flask上下文之线程隔离的g对象的使用

    保存全局对象的g对象
    g对象是在整个flask应用运行期间都是可以使用的,并且也是和request一样,是线程隔离的,这个对象是专门用来存放开发者自己定义的一些数据,方便在整个flask程序中都可以使用,一般使用就是将一些经常会用到的数据绑定到上面,以后就直接从g上面取就可以了,而不需要通过传参的方式,这样更加方便

    def log_a(username):
    print(f'log_a{username}')


    def log_b(username):
    print(f'log_b{username}')


    def log_c(username):
    print(f'log_c{username}')

    from flask import Flask, request
    from utils import log_a, log_b, log_c

    app = Flask(__name__)


    @app.route('/')
    def index():
    username = request.args.get('username')
    log_a(username)
    log_b(username)
    log_c(username)
    return 'hello word'


    if __name__ == '__main__':
    app.run(debug=True)

    使用g变量

    from flask import g


    def log_a():
    print(f'log_a{g.username}')


    def log_b():
    print(f'log_b{g.username}')


    def log_c():
    print(f'log_c{g.username}')

    from flask import Flask, request, g  # g: global  在flask的程序中全局都可以使用
    from utils import log_a, log_b, log_c

    app = Flask(__name__)


    @app.route('/')
    def index():
    username = request.args.get('username')
    g.username = username
    log_a()
    log_b()
    log_c()
    return 'hello word'


    if __name__ == '__main__':
    app.run(debug=True)

  • 相关阅读:
    database join
    图像超分辨率重建
    信号处理
    将博客搬至CSDN
    Openstack
    nginx的优化
    CentOS系统的优化
    zabbix服务端客户端部署
    MySQL优化必须调整的10项配置
    TCP三次握手
  • 原文地址:https://www.cnblogs.com/zhongyehai/p/11874070.html
Copyright © 2011-2022 走看看