1. 先下载库 django-redis
2.在setting中添加缓存设置
CACHES = {
'default': {
'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': 'redis://127.0.0.1:6379',
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
"PASSWORD": "密码",
},
},
}
3.视图函数
from django.core.cache import cache # 引入缓存模块
def detail(request, pk):
if cache.has_key(pk):
print('有cach')
post = cache.get(pk)
print(post)
else:
print('没cach')
post = get_object_or_404(Post, pk=pk)
time.sleep(3)
cache.set(pk, post, 10) # 写入key为key,值为value的缓存,有效期30分钟
return render(request, 'blog/detail.html', context={'post': post})
4.redis 里就能看到有数据了 然后十秒过期之后就没了。有个情况 setting 不配置redis 视图函数那也能使用缓存,但不知道存哪去了。 如果没有设置缓存方式,那么就默认使用的是本地内存缓存的方式。
直接使用视图缓存缓存视图
(setting不用做配置)
from django.views.decorators.cache import cache_page
@cache_page(60 * 15)
def my_view(request):
...
来源:CSDN
作者:xkx_07_10
链接:https://blog.csdn.net/xkx_07_10/article/details/104533504