gpt4 book ai didi

ruby-on-rails - 如何从单独的表格中按总和排序我的条目?

转载 作者:太空宇宙 更新时间:2023-11-03 16:39:09 25 4
gpt4 key购买 nike

我想知道如何让我的 PostController#index 中的帖子按总计列显示在单独的表格中。这是我的设置方式。

class Post < ActiveRecord::Base
:has_many :votes
end

Class Vote < ActiveRecord::Base
:belongs_to :post
end

我的用户可以投票赞成或反对特定的帖子。我知道可能有更好的方法来做我目前正在做的事情,但考虑到我目前的情况正在寻找解决办法。当用户对帖子投赞成票时,值 1 会通过隐藏字段传递到投票表。当用户对帖子投反对票时,值 -1 会传递到同一列(姓名投票)。

我想知道如何按照特定帖子的投票列(在投票表中)的总和顺序显示我的帖子。

另一种说法是,如果某个帖子的净投票总数为 5,我希望它显示在净投票总数为 4 的帖子上方。

我假设我需要以某种方式影响 PostController#index 操作。但不确定该怎么做。

最佳答案

试试这个:

@posts = Post.all(:select => "posts.*, SUM(votes.vote) as vote_total",
:joins => "LEFT JOIN votes AS votes ON votes.post_id = posts.id",
:group => "posts.id",
:order => "vote_total DESC")
@posts.each do |post|
post.vote_total
end

关于ruby-on-rails - 如何从单独的表格中按总和排序我的条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2816424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com