django缓存机制

博客介绍了Django提供不同级别的缓存粒度,包括缓存特定视图输出、难生成部分及整个网站。还提及设置缓存,可在setting.py中使用redis进行缓存,同时介绍了用cache_page装饰器缓存单个视图以及缓存模板片段等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. Django提供了不同级别的缓存粒度
      可以缓存特定视图的输出;
      可以仅仅缓存那些很难生产出来的部分  可以缓存整个网站
  2. 设置缓存
      可将数据缓存在数据库,文件系统,和内存中
    #setting.py
# 使用内存来进行缓存
CACHES={
    'default': {
        'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
        'TIMEOUT': 60,
    }
}

  #使用redis进行缓存

安装包:pip install django-redis-cache

CACHES = {
    "default": {
        "BACKEND": "redis_cache.cache.RedisCache",
        "LOCATION": "localhost:6379",
        'TIMEOUT': 60,
    },
}
  1. 缓存单个视图
    django.views.decorators.cache定义了cache_page装饰器,用于对视图的输出进行缓存
from django.views.decorators.cache import cache_page

@cache_page(60 * 15)
def index(request):
    return HttpResponse('hello1')
    #return HttpResponse('hello2')
  1. 缓存模板片段
{% load cache %}
缓存时间,和缓存片段名
{% cache 500 hello %}
hello1
<!--hello2-->
{% endcache %}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值