class User < ActiveRecord::Base
has_many :posts
has_many :images, as: :imageable
end
class Post < ActiveRecord::Base
belongs_to :user
has_many :images, as: :imageable
end
class Image < ActiveRecord::Base
belongs_to :imageable, polymorphic: true
end
我是否有特定方式可以使用User.images并同时获取用户的图片以及属于该用户的帖子图片?
出于某种原因,我无法理解如何做到最好。
答案 0 :(得分:0)
在这种情况下,您可以避免多态关系,简单has_many
和belongs_to
就足够了。其中:
class User ActiveRecord::Base
has_many :posts
has_many :images
end
class Post ActiveRecord::Base
belongs_to :user
has_many :images
end
class Image < ActiveRecord::Base
belongs_to :post
belongs_to :user
end
但是我想你想问一下User.last.images
而不是User.images
答案 1 :(得分:0)
同样可以通过has_many through associations来完成