在我的网站中,我想在侧边栏中的多个页面中向用户展示查看次数最多的产品类别。
所以在每个不同的视图中我都有:
variables = RequestContext(request, {
(...)
'most_viewed_cats': calculate_most_viewed_categories()
}
并在各种模板中
{% include "list_most_viewed_categories" %}
在那个:
<ul>
{% for cat in most_viewed_cats %}
{{ cat.name }}
{% empty %}
</ul>No categories to show.<ul>
{% endfor %}
</ul>
但是,我想每 2 天左右只计算一次 most_viewed_categories 值,而不是在每个视图中计算它。
我知道可以缓存视图,但这更像是一个变量缓存。是否可以将此变量缓存在 Django 服务器中的某处并仅在该时间段后更新它?怎么做呢?
谢谢