Django Web系列五 django-redis使用方法

setting.py配置:

#配置redis
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}
        },
    },
}
SESSION_COOKIE_AGE=1 * 60 #设置session过期时间为 1 分钟
''' 配置session引擎SESSION_ENGINE为redis,配置此处session会存储在redis中,不会再去操作数据库了 '''
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'

建议redis只缓存固定数据,像用户数据等动态数据勿用。

django 对 redis 装饰器的使用:

from django.views.decorators.cache import cache_page
from django.utils.decorators import method_decorator

# 装饰函数
@cache_page(60*30)  # 设置缓存时间为30分钟
def data(self, request):
	return data

# 装饰类
class Data(View):
    """ 修改密码 """
    @method_decorator(cache_page(60*30))  # 设置缓存时间为30分钟
    def get(self, request):
    	return data

django对数据的操作:

from django.core.cache import cache #引入缓存模块

cache.set("key", "value", timeout=None) # 创建(新的) 键和值,永不过期
# timeout=0 立即过期
# timeout=None 永不超时
cache.set("key", "value", timeout=60*60*24) # 创建 键值,过期时间1天
cache.ttl("key") # 查看现在‘key’的存活时间
cache.get("key") # 获得‘key’,若不存在,返回None

你可能感兴趣的:(Django Web系列五 django-redis使用方法)