我的模型中有一个选择列表,其中列出了一个人的名字及其雇主的名字:

<li>Case Handler Name<span><%= f.select :person_id, Person.all.collect { |x| [x.name_and_company, x.id] } %></span></li>

def name_and_company
return "#{personname} (#{company})"
end

是否可以强制选择列表按字母顺序输出?

我假设我会在那儿放置订单标签...某个地方?
(:order => 'personname DESC')

谢谢,

丹尼

最佳答案

你可以这样

# controller
@people = Person.order_by('personname ASC').collect {|x| [x.name_and_company, x.id] }

# model
named_scope :order_by, lambda { |o| {:order => o} }

# view
<%= f.select :person_id, @people %>

关于ruby-on-rails - 使选择列表按字母顺序在Rails中输出?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3496431/

10-09 02:36