4

私は Rails のポリモーフィック アソシエーションの使用に精通しており、モデルをポリモーフィックと宣言して、次のような多数の他のモデルに属する機能を得ることができます。

class Comment < ActiveRecord::Base
  belongs_to :commentable, :polymorphic => true
end

class Article < ActiveRecord::Base
  has_many :comments, :as => :commentable
end

class Photo < ActiveRecord::Base
  has_many :comments, :as => :commentable
end

class Event < ActiveRecord::Base
  has_many :comments, :as => :commentable
end

モデルが同じインターフェイスを介してアクセスされる他のモデルを多数持つことができる逆のケースに対処するための一般的なパターンはありますか (たとえば、人は多くのペットを飼っていますが、ペットは犬、猫などのいずれかです)。 ? 仮想属性を作成する必要がありますか?

4

1 に答える 1