Django的Cache框架(下)

缓存View

有几种方式,可以让你方便的缓存页面

方案一:

from django.views.decorators.cache import cache_page

@cache_page(60 * 15)
def my_view(request):
    ...

这种方式,你可以直接在View中增加装饰器的方式来实现。

方案二:

from django.views.decorators.cache import cache_page

urlpatterns = [
    path('foo/<int:code>/', cache_page(60 * 15)(my_view)),
]

直接在URL中进行配置,这也非常方便。

缓存Template

{% load cache %}
{% cache 500 sidebar %}
    .. sidebar ..
{% endcache %}

也就是将siderbar缓存500秒

底层使用API - low-level cache API

>>> from django.core.cache import caches
>>> cache1 = caches['myalias']
>>> cache2 = caches['myalias']
>>> cache1 is cache2
True

>>> cache.set('my_key', 'hello, world!', 30)
>>> cache.get('my_key')

根据key名获取value,设置指定key和value;

小结

Django的Cache使用非常简单,如果有兴趣,可以参考官方文档

相关阅读

展开剩余53%