Rails模型关系:有一个但也属于很多

时间:2010-04-13 21:05:02

标签: ruby-on-rails model belongs-to relation has-one

我有两个型号,Modela和Modelb。

Modela只能拥有一个Modelb,但Modelb可以是许多Modela的一部分。

我现在所拥有的是

class Modela < ActiveRecord::Base
  has_one :modelb
end

class Modelb < ActiveRecord::Base
  belongs_to :modela, :foreign_key => "modela_id" #might not make sense?
end

对整体不太确定:我在那里做的外国事情,但是当我离开的时候就是这样。由于我试图允许Modelb成为许多Modela的一部分,我不想在Modelb表中添加modela_id字段。

这样做的最佳方式是什么?

1 个答案:

答案 0 :(得分:3)

应该是:

class Modela
  belongs_to :modelb
end

class Modelb
  has_many :modela
end

并且modelas表应包含modelb_id列。