Django缓存如何设置?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
Django中提供了6种缓存方式:
  开发调试(默认缓存)
  内存
  文件
  数据库
  Memcache缓存
  第三方库支持redis:django-redis
设置缓存:
# 全站缓存(中间件)
MIDDLEWARE = [
    ‘django.middleware.cache.UpdateCacheMiddleware’,     #第一个位置
    'django.middleware.common.CommonMiddleware',
    ‘django.middleware.cache.FetchFromCacheMiddleware’,    #最后位置
]
CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',    # 取决于您选择的Memcached绑定
        'LOCATION': ['127.0.0.1:11211', ],    # 缓存后端服务器位置,支持分布式,可多个
        'TIMEOUT': 5 * 60,    # 缓存超时,默认300s
	}
}
 
# 视图缓存
@cache_page(15)          #超时时间为15秒
def index(request):
   t=time.time()        #获取当前时间
   return render(request,"index.html",locals())
 
# 模板缓存
{% load cache %}
{% cache 2 'name' %}   # 存的key
   <h3>缓存:{{ t }}</h3>
{% endcache %}