在django中使用缓存

时间:2015-01-28 13:36:15

标签: django caching

我想在我的django应用程序中使用Memcache。 Ι希望能够使用每个视图的缓存。但我不知道在缓存中有所了解。让我们说我有以下观点

def view(request, customer_id):
    #some view functionality here

    return queryset #which my different according to some posting data

假设我缓存此视图

@cache_page(60*15)
def view(request, customer_id):
    #some view functionality here

    return queryset

根据this,如果用户访问与“视图”关联的页面,则会缓存该缓存,然后从缓存中检索。什么会被缓存?查询集?还是模板?但是根据一些帖子数据(例如搜索视图),查询集可能会有什么不同呢?您是否可以对如何使用缓存查询集进行更多解释?我应该缓存变化很大的查询集吗?或者不是?

1 个答案:

答案 0 :(得分:2)

  1. 整个页面将被缓存。
  2. 缓存使用整个网址作为密钥。因此url?q=aaa' and 'url?q=bbb将被缓存为不同的页面。
  3. 仅缓存GET和HEAD请求。所以你的POST请求将照常工作。
  4. 至于查询集的缓存... Read this answer