RoR,has_one,或者我还需要其他东西?

时间:2010-12-17 10:33:44

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

所以我有一个Status表(带有一个id和一个名称列),它有“Pending”,“Done”等行。我还有一个Data表,里面有类似的东西id,name,comment等。我希望每个Data行都有一个状态,所以逻辑上看起来就像将status_id放入Data表,但是我如何在RoR中表示? has_one似乎正在反过来。

3 个答案:

答案 0 :(得分:2)

阅读http://guides.rubyonrails.org/association_basics.html#choosing-between-belongs_to-and-has_one并阅读此段2.7 Choosing Between belongs_to and has_one

答案 1 :(得分:1)

您将has_one :data放入Status模型

您将belongs_to :status放入Data模型

如果你的桌子还没有参考,我建议:

rails g migration AddStatusToDatas status:references
rake db:migrate

答案 2 :(得分:1)

您会尝试使用enumerated_attribute插件。如果你有固定的状态,这是很好的解决方案。