如何对options_for_select哈希进行排序?

时间:2011-02-08 23:41:09

标签: ruby-on-rails ruby-on-rails-3 select

我有这样的事情:

options_for_select({ "1 - optimal" => 1, "2 - ausreichend" => 2, "3 - verbesserungsfähig" => 3, "4 - nicht ausreichend" => 4, "5 - gar nicht" => 5})

Rails不会在输出中对这些条目进行排序。如何实现选择字段的数字排序?

1 个答案:

答案 0 :(得分:6)

我相信Ruby1.9,这会像你想要的那样工作(哈希保留它们的插入顺序),所以如果使用1.9是一个选项那么你就完成了。

否则,您可以使用数组而不是哈希:

options_for_select([["1 - optimal", 1], ["2 - ausreichend", 2], ..., ["5 - gar nicht", 5]])