对于特定控制器的操作,我将如何首先检查 HTML 是否在 memcached 中,然后从缓存中渲染。
如果未找到,则呈现视图页面的 html,然后获取该 html 并将其存储在 memcached 中以供将来请求。
我其实是想在控制器的action里面做,因为我想看看用户属于什么角色,是否登录,以及其他逻辑
对于特定控制器的操作,我将如何首先检查 HTML 是否在 memcached 中,然后从缓存中渲染。
如果未找到,则呈现视图页面的 html,然后获取该 html 并将其存储在 memcached 中以供将来请求。
我其实是想在控制器的action里面做,因为我想看看用户属于什么角色,是否登录,以及其他逻辑
最简单的方法是使用cache_page
来自django.views.decorators.cache
.
from django.views.decorators.cache import cache_page
@cache_page(3600) #1 hour cache time in seconds
def a_view_to_cache(request):
...
如果您只想缓存渲染的 html 的一部分,您可以在模板中显式执行此操作
{% load cache %}
{% cache 3600 cache_block_name %}
.. my block ..
{% endcache %}