通常redis都是用来保存session、短信验证码、图片验证码等数据。
在django上使用redis,先要安装一个包:
pip install django-redis==4.8.0(我用的django是1.11.1版本)
在settings上配置:
CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://192.168.8.102:6379/0", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", } }, "session": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://192.168.8.102:6379/1", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", } }, "sms_codes": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://192.168.8.102:6379/2", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", } } } # 保存 session数据到 Redis中 SESSION_ENGINE = "django.contrib.sessions.backends.cache" SESSION_CACHE_ALIAS = "session"
在视图中使用:
# 在redis上查看存储的会话
# 2) ":1:django.contrib.sessions.cachehdrgn4pbtnylv23241089a4ajfkh8f4f"
import json
from django_redis import get_redis_connection
con = get_redis_connection("sms_codes") #con就是StrictRedis类型,default对应settings.py中CACHES中设置的sms_codes。
# dict序列化字符串存储到redis
name = "zhangsan"
val = {"is_login": "True", "username": "zhangsan"}
res = con.set(name, json.dumps(val))
# 从redis取数据
# res = eval(con.get("zhangsan").decode("utf-8"))
res =con.get(name)
print(res)
cp:https://blog.csdn.net/houyanhua1/article/details/84992717
https://blog.csdn.net/houyanhua1/article/details/85052846
https://www.cnblogs.com/yuanchenqi/articles/5716193.html
https://www.jianshu.com/p/2639549bedc8