如何使用django-redis访问其他较低名称空间?

时间:2017-01-22 19:58:29

标签: python django redis django-redis

如何使用django-redis访问其余的名字空间?

cache.keys("*")

只给我名字空间1:1:TEST这是我通过django-redis输入的密钥。请参阅下面的图片,该图片是我能够访问的唯一名称空间。如何访问其余资产?

enter image description here

谢谢!

凯西

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作直接访问redis客户端以访问这些值:

from django.core.cache import caches

default_cache = caches['default']
redis = default_cache.get_master_client()
# now you can use any of the redis client operations on redis
redis.hgetall('BATCH-RP-FAIL')
# or redis.smembers, etc.

n.b.,redis客户端对特定密钥的类型更加挑剔。因此,您必须确保使用redis集的s运算,redis哈希值的h运算等。换句话说,您必须知道要访问的对象的类型使用redis客户端,而django缓存客户端只要求您使用setget并使用序列化转换类型。