2009-07-24 2 views
0

Там должен быть более эффективным способом в Rails сделать это:Более короткий способ сделать это - радиокнопки

<p> 
    <%= f.label :level %> 
    <%= f.radio_button :level, "0" %> <%= f.label :level, 0 %> 
    <%= f.radio_button :level, "1" %> <%= f.label :level, 1 %> 
    <%= f.radio_button :level, "2" %> <%= f.label :level, 2 %> 
    <%= f.radio_button :level, "3" %> <%= f.label :level, 3 %> 
    <%= f.radio_button :level, "4" %> <%= f.label :level, 4 %> 
    <%= f.radio_button :level, "5" %> <%= f.label :level, 5 %> 
</p> 

БД имеет столбец «уровень», который может иметь значение от 0-5. Мне нужно текущее значение, которое будет отображаться в HTML (т.е. checked = "checked"), как это делает код. В Rails должен быть более лаконичный способ сделать это. Любые берущие?

+0

Что об использовании для цикла? –

ответ

7

Это достаточно просто с помощью цикла:

<p> 
    <%= f.label :level %> 
    <% 0.upto(5) do |level| %> 
     <%= f.radio_button :level, level.to_s %> <%= f.label :level, level %> 
    <% end %> 
</p> 
Смежные вопросы