如何对选项字段进行排序?
我在haml中有以下表格
= form_tag assign_client_path, :id => "assign_client_form" do
%legend select partner
%label Select the partner you wish to assign this client to
= select_tag "partner_id", options_from_collection_for_select(Partner.all, "id", "company_name")
= submit_tag "Assign", :id => 'assign'
使用select标签,用户正在从公司名称列表中进行选择,但它正在以另一个顺序生成列表,可能是ID的列表。如何指定company_name的字母顺序
答案 0 :(得分:3)
订单是Partner.all
产生的任何订单,可以是插入顺序,如果使用default_scope
,也可能是其他订单。
只需在您的AR请求中添加.order
组件即可。
例如:
Partner.order(:company_name).all
或者如果你想更明确
Partner.order("company_name DESC").all
旁注,通常最好不要在视图中发出这样的数据库请求。如果将其移动到控制器并改为创建实例变量,它将更清晰,更易于维护。