我有User
和Community
型号。
Community
模型
if current_user.voted_up_on? @community
current_user.dislikes @community
else
current_user.likes @community
end
我正在尝试获取所有喜欢@community的用户。 我正试着这样做。但它不会返回正确的用户 我该如何解决这个问题?
@users = User.where(:id => @community.likes.map(&:voter_id)).order("last_active_at DESC").limit(10)
我正在使用名为'acts_as_votable'的宝石 https://github.com/ryanto/acts_as_votable
答案 0 :(得分:1)
试试这个:
@users = @community.likes.map(&:voter)
答案 1 :(得分:1)
那将返回AR :: Relation
# Note: I'm not sure that polymorphic fields are: "votable_type" and "votable_id"
class Community
...
def last_liked(limit = 10)
User.includes(:votes).where(["votes.votable_type = ? AND votes.votable_id = ?", self.class.name, self.id]).order("users.last_active_at DESC").limit(limit)
end
end