按类方法rails的输出顺序排序

时间:2014-08-30 01:39:33

标签: ruby-on-rails activerecord scope

我正在尝试在模型上输出由特定类方法排序的JSON响应。我知道我可以按实际属性排序,但如何通过发送块来命令。即:

class Baker
  has_many :meals

  def this_week_cookies
    self.meals.this_week.sum(:cookies_baked)
  end
end

我想打电话给

  

Baker.order {|贝克| baker.this_week_cookies}

在视图中输出排行榜,但我知道这不起作用

1 个答案:

答案 0 :(得分:2)

order方法正在编写SQL查询,因此无法使用这样的自定义方法。你需要使用ruby来做你想做的事。

Baker.all.sort_by(&:this_week_cookies)