【问题标题】:order database query results based on capture date根据捕获日期订购数据库查询结果
【发布时间】:2014-01-03 20:22:36
【问题描述】:

我有三个模型;用户、点赞和作品。

一个作品通过upvote模型有很多upvotes,这些upvotes由用户给予。

目前我在排行榜上排名最高的作品:

@pieces = Piece.unscoped.order("votes DESC").first(5)

我还会显示为特定作品投票的用户的详细信息,主要是头像。

我正在尝试找到一种按用户投票顺序显示用户信息的方法。例如。首先投票的用户应该显示在列表的顶部,并阻止用户按照模型定义的默认范围顺序显示。

控制器代码如下:

def leaderboard
  @title = "Leaderboards"
  @pieces = Piece.unscoped.order("votes DESC").first(5)
  @voters = []
  @pieces.each do |voters|
    @voters << voters.users
  end
end

对此的任何帮助将不胜感激

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3.1


    【解决方案1】:

    试试这个代码:

    def leaderboard
      @title = "Leaderboards"
      @pieces = Piece.unscoped.order("votes DESC").first(5)
      @voters = []
      @pieces.each do |piece|
        piece.users.each do |user|
          @voters << user
        end
      end
    end
    

    【讨论】:

      猜你喜欢
      • 2019-09-13
      • 2021-05-21
      • 1970-01-01
      • 1970-01-01
      • 2019-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-10
      相关资源
      最近更新 更多