我有一个 redis 对象的列表。列表中的每个对象都需要有另一个列表。
class Parent
include Redis::Objects
list :children, marshal: true
end
class children
include Redis::Objects
end
上面的代码示例只是强调了这种关系。它们确实包括其他东西,如 attr_accessors 等。
当我在父实例上调用子实例时,我的问题就出现了,如下例所示:
p = Parent.new
Redis::List.new('some_key', marshal: true) << p
p.children
=> nil
我有一个使用事件记录模型的工作示例,其中添加了列表。然而,将它包含在 redis 对象中似乎给我带来了问题。
我是否需要按照 redis-object 文档第二部分中描述的方式手动处理这种情况,或者我是否必须在创建父对象时创建 redis-objects 列表?我的想法是这个创作是隐含的
最佳答案
已解决。我在父级上有一个名为 children 的 attr_accessor。这与用名称 children 定义的列表冲突。删除 attr_accessor 会导致返回一个空的 redis-objects 列表,这是预期的行为。
关于ruby-on-rails - ruby 中 Redis 对象上的 Redis 对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23058401/