Python Django Redis在键上附加相同的注释

Python Django Redis在键上附加相同的注释,python,django,redis,django-redis,Python,Django,Redis,Django Redis,我正在使用Django Redis来存储一些简单的数据 对我来说一切都很好,但我想知道为什么Django Redis会在我保存字符串的每个键前面加上前缀:1: 设置键和值(工作) 获取键和值(工作) Redis CLI 1) ":1:foo" 在CLI中获取密钥 GET foo Result: (nil) GET :1:foo Result: "\x80\x02U\x06barXq\x01." 这实际上是Django缓存API的一部分。具体来说,缓存后端使用a(在您的情况下为空字符串)和

我正在使用Django Redis来存储一些简单的数据

对我来说一切都很好,但我想知道为什么Django Redis会在我保存字符串的每个键前面加上前缀
:1:

设置键和值(工作)

获取键和值(工作)

Redis CLI

 1) ":1:foo"
在CLI中获取密钥

GET foo
Result: (nil) 
GET :1:foo
Result: "\x80\x02U\x06barXq\x01."

这实际上是Django缓存API的一部分。具体来说,缓存后端使用a(在您的情况下为空字符串)和a(在您的情况下为1)转换密钥

前者允许服务器在共享同一缓存后端时使用名称空间来控制冲突,后者允许您使用版本控制来避免在更改缓存数据的格式时刷新数据库

 1) ":1:foo"
GET foo
Result: (nil) 
GET :1:foo
Result: "\x80\x02U\x06barXq\x01."