【发布时间】:2012-06-30 03:03:08
【问题描述】:
我正在使用 django 的 Memcached 和带有 @cache_page(timeout) 装饰器的 per-view 缓存机制。
在一个特定的视图函数中,我希望清除整个缓存。
我尝试了cache.clear() 和cache._cache.flush_all(),但似乎都没有刷新缓存。
还有其他方法可以做到这一点还是我做错了?
编辑: 我意识到完全清除缓存并不是一个好主意,而不是仅仅删除所需的键。但是,我不知道我用 @cache_page(timeout) 装饰的视图的键我如何知道这些?而在我获得密钥之后,我只是做一个cache.delete(key)?
谢谢!
【问题讨论】:
-
清除整个缓存真的没有很好的理由。只需删除您要刷新的键,其余部分不要乱用。
-
我不知道我用@cache_page(timeout) 装饰的视图的键 我如何知道这些?在我获得密钥后,我只需执行一次 cache.delete(key)?
-
查看这个相关的 SO 问题:stackoverflow.com/questions/2268417/…
标签: django caching memcached flush