我有3个模特
class User < ActiveRecord::Base
has_one :image, :as => :imageable, :dependent => :destroy
end
class Product < ActiveRecord::Base
has_one :image, :as => :imageable, :dependent => :destroy
end
class Image < ActiveRecord::Base
belongs_to :imageable, polymorphic: true
end
要求是为多个产品提供相同的图像。即许多产品都有一个图像。
p1, p2, p3 -> img1
如果没有额外的表格,有没有办法实现这一点。请帮忙。
答案 0 :(得分:0)
这可能不是你想要的,但它会做你所要求的,可能是最简单的解决方案。
class User < ActiveRecord::Base
belongs_to :image
end
class Product < ActiveRecord::Base
belongs_to :image
end
class Image < ActiveRecord::Base
has_many :users
has_many :products
def imageables
return users + products
end
end