Rails ActiveRecord模型中的多值属性?

时间:2010-09-09 16:50:12

标签: ruby-on-rails activerecord ruby-on-rails-3

我有一个属性模型应该包含多个值(只是字符串)。使用Rails / ActiveRecord,似乎我必须为这些值(如PropertyValue)创建一个新模型(和一个新表)。由于每个值只存储一个String,因此PropertyValue只需要一个属性(如value)。 我不喜欢这个想法导致访问其中一个值,我现在必须调用property.values [0] .value,这看起来有点难看。 有更好的解决方案吗?

1 个答案:

答案 0 :(得分:1)

尝试serialize方法

class Property < ...
  serialize :value, ::Array
end

value数组将作为字符串存储在properties表中,您可以将其作为普通数组访问:property.value[3]

docs中的更多详情。