使用formtastic在rails中按字母顺序排序?

Nic*_*lek 3 sorting ruby-on-rails

我有一堆状态需要使用 formtastic 在 rails 中按字母顺序排序。有一个小警告。在状态表中,我有一个带有“N/A”的状态名称。'N/A' 必须首先使用 select form helper 方法收集所有状态。这是我目前的代码:

f.input :state, :as => :select, :collection => State.all, :include _blank => false

如何将“N/A”州名称放在集合的顶部,然后按字母顺序排列其余州?示例:“不适用,阿拉巴马州,阿拉斯加州等......”。

感谢大家的帮助/线索。

vee*_*vee 5

尝试:

f.input :state, 
        :as => :select, 
        :collection => State.all.sort_by(&:name), 
        :prompt => 'N/A'
Run Code Online (Sandbox Code Playgroud)

使用State.all.sort_by(&:name)由国家name属性进行排序,并使用prompt: 'N/A'以显示N/A作为第一选择select

或者,使用以下命令在数据库中排序:

f.input :state, 
        :as => :select, 
        :collection => State.order(:name), 
        :prompt => 'N/A'
Run Code Online (Sandbox Code Playgroud)