我在cache.set(key, value, time_expire)
这是我的代码:
from django.core.cache import cache
cache_key = 'unique keyname'
res = cache.get(cache_key)
# res data is None
res = 'some data'
cache.set(cache_key, res, 60 * 60 * 24 * 30)
settings.py
# Cache servers
CACHES = {
'default': {
'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': 'redis-ha-1/'
'IP1,'
'IP2,'
'IP3'
'/1',
'OPTIONS': {
'CLIENT_CLASS': 'django_redis_sentinel.SentinelClient',
}
}
}
但是在cache.set
上我得到了
get_client()获得了意外关键字'trive'
代码正在通过芹菜运行。
Django==1.10.5
django-celery==3.2.2
celery==3.1.25
django-redis==4.7.0
django-redis-sentinel==1.0
有什么问题?
编辑
我使用命令:
pip install django-redis-sentinel --upgrade
这是结果:
Requirement already up-to-date: django-redis-sentinel in /lib/python2.7/site-packages (1.0)
Requirement already satisfied, skipping upgrade: django-redis>=3.8.0 in /lib/python2.7/site-packages (from django-redis-sentinel) (4.7.0)
Requirement already satisfied, skipping upgrade: redis>=2.10.0 in /lib/python2.7/site-packages (from django-redis>=3.8.0->django-redis-sentinel) (2.10.6)
问题与版本有关。尝试过的param被称为和删除,因此您使用的django redis版本已经更新,但是您使用的某些软件包不是试图传递此参数。
stacktrace会告诉您在哪里或什么是旧还是只是回滚django-redis到4.5?我不确定,但我认为还可以。