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>

dbには、0〜5の値を持つことができる列「レベル」があります。このコードのように、現在の値をHTMLで表示する(つまり、checked = "checked")必要があります。Railsには、これを行うためのより簡潔な方法が必要です。テイカーはいますか?

4

1 に答える 1

7

ループを使えば簡単です:

<p>
    <%= f.label :level %>
    <% 0.upto(5) do |level| %>
      <%= f.radio_button :level, level.to_s %> <%= f.label :level, level %>
    <% end %>
</p>
于 2009-07-24T18:29:08.840 に答える