【发布时间】:2017-03-16 01:15:29
【问题描述】:
我正在使用 redis 在 django 应用程序中进行缓存。我也在使用Django Rest Framework,这是我的问题。
我正在使用这样的缓存系统:
from django.views.decorators.cache import cache_page
urlpatterns = [
...
url(r'^some_url/$', cache_page(CACHE_TTL)(SomeView.as_view())
...
]
这里,SomeView 是一个继承自 APIView 的类。
现在假设我们向这个 url 发出请求,我们收到一个 json 对象,其中包含这个 url 返回的任何实例。
然后我们继续删除(使用 django 的管理界面)该对象,并再次发出请求。预期的结果是一个空的 json 对象,但我收到的是同一个对象没有改变,如果添加一个新对象也会发生同样的情况,响应仍然只有一个对象。
一段时间后(缓存中请求的 TTL)结果是正确的。
那么,我如何告诉 django 缓存条目不再有效?
【问题讨论】:
-
@alzaro,这不是同一个问题,你引用的问题的答案是真的解决了我的问题,但原来的问题不一样。我不想使缓存过期,我希望更新缓存。