1

私は現在、非常に単純に見えるモデル構造を設定しようとしていますが、完全には理解できていません。

aまたは a のpaymentいずれかに属することができるモデルがあります (両方とも多くの を持つことができます)。customersupplierpayments

私の質問は、これを可能にするためにインターフェーステーブルを手動で作成する必要があるのか​​ 、それともポリモーフィックアソシエーションを宣言することでこれができるのかということです.

たとえば、私は持っています:

class Payment < ActiveRecord::Base
    belongs_to :payment_originator, :polymorphic => true
end

class Customer < ActiveRecord::Base
    has_many :payments, :as => :payment_originator
end

class Supplier < ActiveRecord::Base
    has_many :payments, :as => :payment_originator
end

これで十分ですか、それともジェネレーターを使用して payment_originator モデルを手動で作成する必要がありますか?

ありがとう!

4

1 に答える 1

2

モデルに関しては、これで十分です。:payment_originator_type:payment_originator_idを支払いテーブルに移行するだけです。上記で定義した関連付けにより、これらが自動的に入力されます。

于 2012-07-09T16:56:43.987 に答える