我正在尝试为我的Django应用程序设置缓存,但似乎Django的缓存框架基于TIMEOUT
:设置缓存并且它将在TIMEOUT
秒数内保持有效。
对大多数情况来说,这似乎毫无用处。大多数网页都会有一些用户提供的内容,例如评论或投票或论坛帖子。超时缓存机制在那里不起作用。需要的是使缓存无效的某种方式:当用户提交注释或投票时,该页面的缓存需要被无效。
有没有办法在Django中这样做?如果没有,你如何缓存Django应用程序生成的页面?
感谢。
答案 0 :(得分:2)
有一种方法可以手动删除django中的缓存项目。在cache.delete
和cache.delete_many
搜索in the documentation。在django视图中,您可以根据您想要的任何规则以编程方式决定何时使缓存项无效(或删除)。为避免出现TIME_OUT问题,只需给出足够长的时间即可到达。
在SO中也很少有类似的问题可以帮助你...看到这个......