Rails Associations,habtm?多态?都?

时间:2008-11-02 23:46:04

标签: ruby-on-rails polymorphism has-and-belongs-to-many

在我的Rails应用程序中,我有三个模型,Projects,BlogPosts和Images。 Projects和BlogPosts可以有很多链接的图像,图像可以链接到Project,BlogPost或两者。

设置关联以使其在Rails中工作的最佳方法是什么?

1 个答案:

答案 0 :(得分:9)

我将这个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