在我的应用中,用户可以对问题进行投票并发布问题。我想看看用户在他们的问题上收到了的总票数。
我想做user.questions.upvotes
,但这似乎不起作用,因为它在关联上调用方法。如果我执行user.upvotes
,它将获得用户给出的所有upvotes,而不是已接收。
让我们以Stackoverflow为例:
"user" has_many "questions"
"user" has_many "upvotes"
"question" belongs_to" "user"
"question" has_many "upvotes"
"upvote" belongs_to "user"
"upvote" belongs_to "question"
如何获得用户收到的所有评价?
(顺便说一下,如果你对这个问题有一个更抽象的标题,请评论,以便将来更容易搜索。我无法想到一个明确的标题)
答案 0 :(得分:1)
呃,写完整件事后意识到这只是
获得一个人收到的所有选票:
user.questions.count(:votes)
获得一个人给出的所有选票:
user.votes.count