Foo
とBar
という2つのモデルクラスがある場合、Fooテーブルの外部キーを使用して、3つの異なるプロパティ名を使用してFooにBarのインスタンスを3つずつ追加します。バーは別々に管理され、Fooの多くのインスタンスに属することができます。これは、多少(?私は思う)、明らかにhas_oneを使用するために間違った団体である、それを説明する:1つのモデル内で複数の1対多の関連付け
Foo
has_one :prop_a, :class_name => "Bar"
has_one :prop_b, :class_name => "Bar"
has_one :prop_c, :class_name => "Bar"
Bar
bar_type
文字列フィールドで示されるバーの3つの潜在的な種類があります、Fooの上の各参照は、これらのいずれかに対応します。例えばFoo.prop_a
は、bar_type
= 'type_a'のBarインスタンスを参照しています。 Railsでこのタイプの関連付けを作成するにはどうすればよいですか?