在redis中存储并获取django模型对象

时间:2014-12-04 19:38:50

标签: python django redis

我设置了Django& Redis项目并尝试在Redis中存储django模型对象。如果我使用django.core.cache,如下所示,card2正确设置为django对象。但是,如果我使用django_redis提供的原始redis conenction,它将获取django模型对象的字符串表示。

我将两个键设置如下。如何使用原始redis连接获取卡对象本身而不是其字符串repr?我需要它,因为我想使用mgetzrange类似redis.py的方法。

from django.core.cache import cache
from django_redis import get_redis_connection

con = get_redis_connection("default")
card = Card.objects.all()[0]

key = "card_" + str(card.id)

con.delete(key)
cache.delete(key)

con.set(key, card)
cache.set(key, card)

card1 = con.get(key)
card2 = cache.get(key)

1 个答案:

答案 0 :(得分:2)

您必须手动将响应从redis转换为python对象。

提示:使用泡菜, 以下是示例:12