在Redis中保存和检索字符串数组

时间:2013-05-30 19:18:20

标签: ruby-on-rails-3 redis

我正在寻找获取和设置字符串数组的一些示例,我似乎无法找到它或使其工作。

字符串本身是SecureRandom.hex值。把它们想象成邀请码。我想创建一对键/值:

1)Key=> invite:code:88bb4bdfef Value=> userid

2)Key=> userid:invite:codes Value => 88bb4bdfef,73dbfac453,etc...(每个先前集合的一个条目)

我只是停留在管理第二个键/值对中的值。

更新 所以挑战在于,如果我创建一个数组并将其设置为:

foo=Array.new
foo.push("abc")
foo.push("def")

此时foo看起来像: [ “ABC”, “DEF”]

所以我在redis中设置foo,将其检索到bar:

$redis.set(:foo,foo)
bar=$redis.get(:foo)

现在吧看起来像: “[\” ABC \ “\ ”DEF \“]”

1 个答案:

答案 0 :(得分:8)

您需要此处的列表或集,而不是简单的键。以下是使用Redis设置功能的示例:

$redis.sadd("userid:invite:codes", ["88bb4bdfef", "73dbfac453"])
$redis.smembers("userid:invite:codes")
=> ["88bb4bdfef", "73dbfac453"]