2012-01-27 11 views
0

私はページモデルがあり、それぞれのページがタイプ1になりうるシナリオを持っています。ページには、ビデオや画像、その他多くのタイプのタイプがあります。ビデオと画像には独自のモデルがあるので、このページを多態性にしたいと思っています。レールで可能ですか?複数のモデルの多態性結合

class Page < ActiveRecord::Base 
    belongs_to :pageable, :polymorphic => true 
end 

class Video < ActiveRecord::Base 
    has_one :page, :as => :pageable, :class_name => 'Video' 
end 

class Image < ActiveRecord::Base 
    has_one :page, :as => :pageable, :class_name => 'Image' 
end 

これは有効ですか?私の要件は、ページの作成中に、タイプの1つを選択してからそれを選択してビデオまたは画像フォームに転送する必要があるということです。

答えて

0

有効です。これが多型関連が提供されるものです。

+0

私のシナリオでは、ページはビデオや画像を所有していますが、主にポリモルフィックアソシエーションでポリモーフィックオブジェクトは他の人がポストや記事のように所有しています。私の上のスニペットは、ページがイメージやビデオによって所有されていることを示唆していますが、私のシナリオではうまくいきませんか?もしそれがないなら、私はそのために何をする必要がありますか? –

関連する問題