我正在构建一个允许用户发布的应用程序。这些帖子可以被赞成和反对。每个帖子记录都会跟踪upvotes:integer
和downvotes:integer
。我希望能够对总投票数最多的记录进行排序(换句话说:)upvotes-downvotes
。我完全不知道如何做到这一点,因为我不太了解 Class 方法如何与调用它们的对象交互。这是我的尝试:
我的控制器:
def index
@posts = Post.find(:all).most_votes.order(vote_difference)
end
我的 Post.rb 模型:
def self.most_votes
vote_difference = (upvotes-downvotes)
end
关于如何做到这一点的任何想法?