Rails,模型多态和double foreign_key

时间:2015-10-16 17:54:04

标签: ruby-on-rails ruby-on-rails-4 rails-activerecord rails-models

我对Rails相当陌生,我正在开发一个" Facebook"像软件一样,用户可以写帖子,发表评论,并放置喜欢(投票)。 可以对两个评论的帖子进行投票。用户可以投票自己的帖子以及其他用户的帖子。

所以,这是我的模特:

user.rb

>>> data_bio = BIO.openfile('data.txt')

post.rb

has_many :posts
has_many :votes

comments.rb

belongs_to :user
has_many :comments
has_many :votes, as: :votable

votes.rb

belongs_to :user
belongs_to :post
has_many :votes, as: :votable

(它具有多态性,因为它适用于评论和帖子。我做得好吗?)

我的数据库结构是这样的: 表帖(id,user_id,...) 表投票(id,votable_id,votable_type,user_id,...)

这里的问题是:如何在user_id 16和我正在寻找user_id 21个帖子的地方加载正确的信息?

这是我在急切的加载声明中所需要的:

belongs_to :user
belongs_to :voteable, polymorphic: true

我试图找到一种方法来放置" votes.user_id"在eager_load语句中的条件,但我找不到方法...

感谢名单!

0 个答案:

没有答案