https://pythonav.com/wiki/detail/10/82/
5. django连接redis
按理说搞定上一步python代码操作redis之后,在django中应用只需要把上面的代码写到django就可以了。
例如:django的视图函数中操作redis
import redisfrom django.shortcuts import HttpResponse# 创建redis连接池POOL = redis.ConnectionPool(host='10.211.55.28', port=6379, password='foobared', encoding='utf-8', max_connections=1000)def index(request):# 去连接池中获取一个连接conn = redis.Redis(connection_pool=POOL)conn.set('name', "武沛齐", ex=10)value = conn.get('name')print(value)return HttpResponse("ok")
上述可以实现在django中操作redis。但是,这种形式有点非主流,因为在django中一般不这么干,而是用另一种更加简便的的方式。
第一步:安装django-redis模块(内部依赖redis模块)
pip3 install django-redis
第二步:在django项目的settings.py中添加相关配置
# 上面是django项目settings中的其他配置....CACHES = {"default": {"BACKEND": "django_redis.cache.RedisCache","LOCATION": "redis://10.211.55.28:6379", # 安装redis的主机的 IP 和 端口"OPTIONS": {"CLIENT_CLASS": "django_redis.client.DefaultClient","CONNECTION_POOL_KWARGS": {"max_connections": 1000,"encoding": 'utf-8'},"PASSWORD": "foobared" # redis密码}}}
第三步:在django的视图中操作redis
from django.shortcuts import HttpResponsefrom django_redis import get_redis_connectiondef index(request):# 去连接池中获取一个连接conn = get_redis_connection("default")conn.set('nickname', "武沛齐", ex=10)value = conn.get('nickname')print(value)return HttpResponse("OK")
