一、环境安装

基本环境:

Python环境:Python 3.8.16

Django环境:4.1

redis环境:参考搭建 https://www.cnblogs.com/yclh/p/14742336.html

并且已经添加了myApp的应用

安装redis的包:

pip install django-redis

二、配置文件

打开Django的配置文件,比如说setting.py,里面设置CACHES项

CACHES = {

"default": {

"BACKEND": "django_redis.cache.RedisCache",

"LOCATION": "redis://127.0.0.1:6379",

"OPTIONS": {

"CLIENT_CLASS": "django_redis.client.DefaultClient",#连接池

"CONNECTION_POOL_KWARGS": {"max_connections": 100},#连接池

"SOCKET_CONNECT_TIMEOUT": 5,  # 连接redis超时时间,单位为秒

"SOCKET_TIMEOUT": 5,  # redis读写操作超时时间,单位为秒

# "PASSWORD": "123",

}

}

}

三、myApp里配置路径和编写view的方法

1、配置路径

2、编写view的方法

from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
#1 使用cache(推荐使用这种方法)
from django.core.cache import cache def index(request):
cache.set("oneName", "张三")
#timeout是有效期 单位是秒
cache.set("TwoName", "lisi", timeout=5)
print(cache.get("oneName"))
print(cache.get("TwoName"))
return HttpResponse('设置成功') #2 直接使用conn对象(不推荐,但是也可以用)
from django_redis import get_redis_connection def my(request):
redis_conn = get_redis_connection("default")
redis_conn.set("id", "hello")
print(redis_conn.get("id")) # 查看目前已创建的连接数量
connection_pool = redis_conn.connection_pool
print(connection_pool._created_connections)
return HttpResponse('设置成功')

四、验证效果

注:结合控制台的输出,验证从redis里取数据

1、进入redis客户端

127.0.0.1:6379> keys *

(empty list or set)

没有主键信息

2、浏览器访问http://127.0.0.1:8000/redis/test

127.0.0.1:6379> keys *

1) ":1:TwoName"

2) ":1:oneName"

有两个key了,过5秒钟在次查看

127.0.0.1:6379> keys *

1) ":1:oneName"

TwoName过期就从redis里自动删除了

3、浏览器访问http://127.0.0.1:8000/redis/other

127.0.0.1:6379> keys *

1) "id"

2) ":1:oneName"

说明view里写的两种方式都可以操作redis

最新文章

  1. BZOJ 4582: [Usaco2016 Open]Diamond Collector
  2. TP框架常用(一)
  3. 让VS 2010在调试字符串时,支持Json数据格式友好显示
  4. bzoj3756: Pty的字符串
  5. unity gizmo绘制圆形帮助调试
  6. Zepto与jQuery的区别
  7. 开启URL伪静态的方法
  8. java线程之生产者消费者
  9. 点击率模型AUC
  10. Redola.Rpc 集成 Consul 服务发现
  11. 结对作业(1)----基于GUI的四则运算
  12. ubuntu下使用nginx搭建流媒体服务器,实现视频点播
  13. onConfigurationChanged方法的使用
  14. 五、docker网络技术
  15. ES6之Spread Operater拷贝对象
  16. VSCode and NoteBook for JavaScript | NodeJS
  17. springboot2、mybatis-plus3 一行配置实现打印sql最终填充的参数值
  18. Django——photo
  19. Hdu-1358Period(KMP算法之next数组的应用)
  20. php7配置多线程

热门文章

  1. vs2019编写代码时的光标变成了黑块,选中字时替换掉了黑块选中的字的解决方法
  2. .net core 读取配置文件的几种方式
  3. FreeRTOS使用汇总
  4. HTML5基本网页结构以及标签的改变
  5. Can not use keyword ‘await’ outside an async function
  6. 深度学习框架Pytorch学习笔记
  7. mac sourceTree 每次操作提示需要密码
  8. SAP 后台任务定时job
  9. linux开放指定端口
  10. excel添加下拉列表