我有一个Item模型。有一种方法可以将所有itens(Item.all)存储在Redis数据库中吗?我试过这个:
$redis = Redis::Namespace.new("suggestme", :redis => Redis.new)
$redis.set("itens", Item.all)
但是当我检索到它时:
$redis.get("itens")
我得到一个String" #Item :: ActiveRecord_Relation:0x007fe399d6e550"
想法是将完整的itens数组存储在其中
答案 0 :(得分:0)
Redis仅存储字符串值。如果要存储其他类型的对象,则必须使用编组。有一个名为Marshal的内置ruby类,它可以帮助你实现它。
$redis.set("itens", Marshal.dump(Item.all))
Marshal.load($redis.get("itens"))