【发布时间】:2011-01-26 19:17:00
【问题描述】:
我有一个用烧杯缓存装饰器装饰的函数。该函数位于一个模块中,从该模块中导入主应用程序。
from caching import cache, my_cached_function
现在,我在一个函数中使用了修饰函数:
def index():
data = my_cached_function() # no args
在另一个函数中,我尝试使缓存无效:
def new_item():
cache.invalidate(my_cached_function, 'namespace')
由于烧杯缓存配置了'cache.type': 'memory',我也试过了:
def new_item():
cache.invalidate(my_cached_function, 'namespace', type='memory')
我在这里做错了什么?
注意事项
在典型情况下,我大部分时间都会调用 index()。每当调用 new_item() 时,我都需要清除缓存,以便 index() 调用将考虑 new_item() 函数创建的新项目。
有问题的应用程序是一个运行在 Bottle 框架之上的 Web 应用程序。
【问题讨论】:
标签: python caching bottle beaker