框架中settings的设置
#配置缓冲系统
CACHES = {
"default": {
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": "redis://127.0.0.1:6379",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
}
}
}
下面是代码格式
#导入缓存库
from django.core.cache import cache
#导入数据库类
from myapp.models import Student
#导入页面缓存类
from django.views.decorators.cache import cache_page
#定义一个视图类
class CacheTest(View):
#定义方法
def get(self,request):
#给内存中存入key为key1的键值
cache.set('key1','你好')
#通过key来获取之前存储的值
val = cache.get('key1')
# print(val)
#通过设置超时时间,来让变量自动消亡 第三个参数为超时时间,以秒为单位
cache.set('key2','Hello',20)
val2 = cache.get('key2','该变量已经超时')
#删除key
# cache.delete('key2')
#ttl方法,用来判断变量的生命周期 0 表示无此键值或者已过期 None 表示未设置过期时间
print(cache.ttl('key2'))
print(val2)
#取验证码的缓存
print(cache.get('mailcode'))
return HttpResponse('这里是缓存测试')
这里是通过上面的 导入页面缓存类 设置方法视图的过期时间
#方法视图
@cache_page(60)
def page_caches(request):
#读取数据
res = Student.objects.all()
return render(request,'pagecache.html',locals())