0
私はいくつかの一見単純な関連付けを行いたい:複数の団体が
class OrderWizard < ActiveRecord::Base
belongs_to :buyer_wizard, :class_name => MiniWizard.name
belongs_to :seller_wizard, :class_name => MiniWizard.name
end
class MiniWizard < ActiveRecord::Base
has_one :order_wizard, :foreign_key = '????' # Could be buyer_wizard_id or seller_wizard_id
def is_buyer_wizard?
??
end
def is_seller_wizard?
??
end
end
アンの関連MiniWizardは、それに接続しているかを知る必要があります。仮定has_many:行く最善の方法ですか?もしそうなら、モデルはどのように見えるでしょうか?
MiniWizardインスタンスは、購入者か売り手かを知る必要があります。これを行う方法に立ち往生してください。あなたが実際にはおそらく2つの関連付けをしたい
しかしMiniWizardインスタンスは1つのみorder_wizardを持つことになります。ではなぜhas_manyですか? – jevy
私は、has_oneのケースで働くための答えを更新しました。 has_oneとhas_manyの両方がユースケースに応じて動作するため、関係をどのように定義するかは重要ではありません。ポイントは2つの関係 - 各外部キーに1つの関係 - 単一の関係ではありません。 –
..もし私がただ望むのであれば、order_wizardは追加されたメソッドを実行できますか? – jevy