示例代码
main.py文件
from flask import Flask, g
import tool
app = Flask(__name__)
# 上下文变量:有使用范围 [请求开始, 请求结束]
# 请求上下文:包含一些和请求相关的数据 request session
# 应用上下文:包含一些和应用有关的数据 current_app g
# curr_app:会自动引用创建的Flask应用, 如果想要在项目的其他文件中使用app, 则应该通过current_app来获取,主要目的为避免循环导入问题
# g:flask给开发者预留的一个容器, 可以存放自定义数据 g变量每次请求会重置
# g的使用场景: 1.在请求钩子和视图函数之间传递数据 2.在视图函数的多层嵌套函数中传递数据
@app.route('/')
def index():
print('执行视图')
g.name = 'zs'
tool.func()
return 'index'
if __name__ == '__main__':
app.run(debug=True)
tool.py文件
from flask import g, current_app
def func():
print(g.name)
print(current_app.url_map)