2012-06-28 11 views

risposta

0

Il metodo options_for_select fa ciò che si desidera, ma solo se è possibile inizializzarlo con i dati corretti. Ciò significa che è necessario un array con i valori appropriati. Per esempio:

options_for_select((0..28).to_a.collect { |v| v.to_f/2 + 1 }) 
15
select_tag "sizes", options_for_select((4..15).step(0.5)) 

Ecco come ho scritto ... ma è questo il modo migliore per affrontare?

Inoltre, se volessi che 4.0/5.0/6.0 ecc. Legga 4/5/6 come numeri interi, c'è un modo per farlo/includerlo su una riga?

+1

È possibile mappare i valori e li converte da carri a fixnums se sono numeri interi: '(4..15) .step (0,5) .map {| n | n% 1 == 0? n.to_i: n} ' –

+0

In realtà sembra che @DerekHall l'abbia già suggerito. –

2
select_tag "sizes", options_for_select((4..15).step(0.5).map{|n| n%1 == 0 ? n.to_i : n}) 
Problemi correlati