2012-04-16 48 views
1

我有一个显示产品列表的页面。我在每个请求中都列出了列表中的所有产品,因此我使用的是由django提供的标准缓存中间件。Django缓存同一页面的不同内容

现在我将限制显示的产品数量,并希望将每个中间结果都缓存在缓存中,因此我不需要始终生成所有页面。示例:假设列表中有9种产品,并且一次显示3种产品。

我将有一页产品从0到2,从3到5,从6到8.访问它们的URL都是相同的。例如,是否可以使用标准缓存中间件向“Vary”头添加内容?我可以在某处添加初始索引(0,3或6),因此我可以使用其中一个标准装饰器?

+0

存在[django-pagination](http://code.google.com/p/django-pagination/) ) - 在你的情况下它可能很方便。 – styts 2012-04-16 22:46:05

回答

0

我找到了一个解决方案。根据#django irc频道中的建议缓存render_to_response在视图中返回的响应

0

您应该为您的问题添加一些更多描述,例如您正在使用的中间件和/或涉及的视图装饰器。

我能说的是,Django会关心自身的GET参数,所以如果你有一个像

一个url

/列表/?页= 1

该页面缓存都会有不同的缓存键比

/list /?page = 2

相关问题