1

従業員がマネージャーを持ち、潜在的に何人かの部下を持つ関係を定義するにはどうすればよいでしょうか (これらはすべて Employee モデルの例です)。これまでの私の試みでは、特定の人物が最大 1 人の部下しか持てないという結果になりました。

has_one :manager, :class_name => Employee, :foreign_key => "manager"
has_many :subordinates, :class_name => Employee, :foreign_key => "manager"

これは当たり前のことのように感じますが、頭を壁にぶつけると難しくなります。

4

1 に答える 1

5

これを試してください:

class Employee

  belongs_to :manager,      :class_name => 'Employee', :inverse_of => :subordinates
  has_many   :subordinates, :class_name => 'Employee', :inverse_of => :manager

end
于 2012-11-21T13:58:12.900 に答える