我正在尝试在我的flask
应用程序中保存一个缓存字典。
据我了解,应为此使用Application Context,尤其是flask.g 对象。
设置:
import flask as f
app = f.Flask(__name__)
现在,如果我这样做:
with app.app_context():
f.g.foo = "bar"
print f.g.foo
它打印bar
。
继续以下内容:
with app.app_context():
print f.g.foo
AttributeError: '_AppCtxGlobals' object has no attribute 'foo'
我不明白,文档根本没有帮助。如果我正确阅读它们,则应该保留状态。
我的另一个想法是简单地使用模块范围的变量:
cache = {}
def some_function():
cache['foo'] = "bar"
但似乎这些都会随着每个请求而重置。
如何正确执行此操作?
编辑:烧瓶 10.1