Flask App上下文
app上下文
应用上下文和请求上下文都是存放到一个’LocalStack’的栈中
和应用app相关的操作就必须用到应用上下文,比如通过current_app获取当前这个app
和请求相关的操作就必须用到请求上下文,比如url_for反转视图函数
视图函数中不需要考虑上下文的问题
应用上下文:
1 | from flask import current_app |
手动推入应用上下文:
第一种方法:
1
2
3
4
5
6#在路由函数外调用current_app模块
#需要先设定好应用上下文
app.context = app.app_context()
app.context.push()
print(current_app.name)第二种方法:
1
2with app.app_context():
print(corrent_app.name)
请求上下文:
1 | #请求上下文最常见的一个是url_for |