django默认不支持redis缓存

方式一

  1. import redis
  2. POOL = redis.ConnectionPool(host='127.0.0.1', port=6379,password='1234',max_connections=1000)
import redis
from django.shortcuts import render,HttpResponse
from utils.redis_pool import POOL

def index(request):
    conn = redis.Redis(connection_pool=POOL)
    conn.hset('kkk','age',18)

    return HttpResponse('设置成功')
def order(request):
    conn = redis.Redis(connection_pool=POOL)
    conn.hget('kkk','age')

    return HttpResponse('获取成功')

自己写好连接池等代码使用,这种使用方式其他框架中也可以使用

方式二

使用django-redis

#安装好django-redis后在settings中配置
#使用的时候还是按django的cache使用方式
#本质是重写django.cache的方法


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}
            # "PASSWORD": "123",
        }
    }
}

方式三

from django_redis import get_redis_connection
conn = get_redis_connection('default')
print(conn.hgetall('xxx'))

这种方式是基于连接对象的

注意:方式二的使用不需要注意数据类型,方式三的使用需要注意数据类型