6

0.5 刻みで 1 ~ 15 の数字の選択を生成する Rails select タグを作成する最も簡単な方法は何ですか?

これは単純でなければならないことはわかっていますが、構文に苦労しています。私が行った方法よりもエレガントな方法で書く必要があることはわかっています。

ありがとう!

4

3 に答える 3

17
select_tag "sizes", options_for_select((4..15).step(0.5))

これは私が書いた方法です...しかし、これはアプローチする最良の方法ですか?

また、4.0/5.0/6.0 などで 4/5/6 を整数として読み取らせたい場合、これを 1 行で実行/含める方法はありますか?

于 2012-06-28T14:15:35.440 に答える
2
select_tag "sizes", options_for_select( (4..15).step(0.5).map{|n| n%1 == 0 ? n.to_i : n} )
于 2012-06-28T15:00:32.640 に答える
0

このoptions_for_selectメソッドは必要なことを実行しますが、正しいデータをシードできる場合に限ります。これは、適切な値を含む配列が必要であることを意味します。例えば:

options_for_select((0..28).to_a.collect { |v| v.to_f / 2 + 1 })
于 2012-06-28T14:13:27.923 に答える