0

我的User模型中有一个名为display_name. 在我的控制器中,我想按字母顺序对所有User对象进行display_name排序。display_name返回一个字符串,我该怎么做?

用户

  def display_name
      if !addressbook.b_company.nil?
        if addressbook.b_company.downcase[0..3] == "the "
                addressbook.b_company[4..-1]
        else
                addressbook.b_company
        end
      else
          "#{addressbook.b_lastname}, #{addressbook.b_firstname}"
      end
  end
4

1 回答 1

1

使用sort_by并将其传递给您的方法:

@users.sort_by(&:display_name).each do |user|
  # your code here
end
于 2013-08-25T20:06:14.760 回答