我有一个用烧杯缓存装饰器装饰的函数。该函数位于一个模块中,从该模块导入主应用程序。
from caching import cache, my_cached_function现在,在一个函数中,我使用了修饰函数:
def index():
data = my_cached_function() # no args在另一个函数中,我试图使缓存失效:
def new_item():
cache.invalidate(my_cached_function, 'namespace')由于Beaker缓存是用'cache.type': 'memory'配置的,所以我也尝试过:
def new_item():
cache.invalidate(my_cached_function, 'namespace', type='memory')我在这里做错什么了?
注意到
在一个典型的场景中,我大部分时间都会调用index()。每当调用new_item()时,我都需要清除缓存,这样索引()调用将考虑到new_item()函数创建的新项。
所讨论的应用程序是一个运行在瓶子框架之上的web应用程序。
发布于 2011-01-26 02:46:09
在调用my_cached_function之前,需要使缓存失效。有关示例,请参见beaker.cache.CacheManager文档。
https://stackoverflow.com/questions/4799765
复制相似问题