我正在尝试根据他们获得的票数来查询热门演员(类似帖子)。
Acts_as_votable gem,目前我的演员阵容是可投票的。我可以投票给他们并检索他们的upvotes - downvotes,但我需要查询顶级演员。请帮助!
下面没有用
'<%cast_query = Cast.includes(:votes).order('vote_flag')。all%>'
说'vote_flag'无法识别,但我查看了我的Postgresql,这是upvote或downvote的1或0列的名称。
答案 0 :(得分:1)
vote_flag列是投票,而非投票。除非你进行连接而不是包含,否则这不会起作用。
您可能希望按照此处的说明进行操作 - https://github.com/ryanto/acts_as_votable#caching - 设置可投票对象的缓存投票计数(在您的案例中为Cast)并按该缓存值排序。这将是合理的表现。
或者,您可以使用投票表进行联接,按强制转换。*进行分组,并使用vote_flag的总和进行排序。但那要复杂得多。