5
在我的Rails應用程序中,我有三個模型,Projects,BlogPosts和Images。項目和BlogPosts可以有很多鏈接的圖像,並且圖像可以鏈接到Project,BlogPost或兩者。Rails協會,habtm?多態?都?
設置關聯以使其在Rails中工作的最佳方式是什麼?
在我的Rails應用程序中,我有三個模型,Projects,BlogPosts和Images。項目和BlogPosts可以有很多鏈接的圖像,並且圖像可以鏈接到Project,BlogPost或兩者。Rails協會,habtm?多態?都?
設置關聯以使其在Rails中工作的最佳方式是什麼?
我想把這個habtm分解成一個單獨的模型類ImageLink。然後你會得到:
Project
has_many :image_links, :as => :resource
BlogPost
has_many :image_links, :as => :resource
ImageLink
belongs_to :image
belongs_to :resource, :polymorphic => true
Image:
has_many :image_links
這是不是一個真正的「梳理出」的habtm,因爲它確實是同一個的habtm(與作爲ImageLink的的HABTM表),但這種方法的好處是,你把兩個房間合併成一個房間。 – 2008-11-03 08:30:57