Rails 4:通过has_one值和备用名称排序

时间:2014-03-17 14:02:15

标签: ruby-on-rails activerecord ruby-on-rails-4

class Foo < ActiveRecord::Base    
  has_one :baz, -> class_name: 'Bar'
end

class FoosController < ApplicationController
  def index
    @foos = Foo.includes(:baz).order ...?
  end
end

我想根据Foo订购Baz.value的索引。但是,我无法找到有效的命令。轨道控制台...... Foo.includes(:baz).order('baz.value')生成错误。我能在这做什么?

1 个答案:

答案 0 :(得分:1)

您实际上没有baz表。由于bars,您有class_name: 'Bar'表。

所以正确的将是Foo.includes(:baz).order('bars.value')