私はいくつかのラジオボタンを作成しようとしていますが、どうすればいいのかわかりません。 this の質問に続いて、ほぼ正しく動作するように設定しましたが、これは初めてであり、なぜ完全に理解できないのかわかりません。だから私がやっていることは、ブール値をグループ化するラベルを付けてから、はいといいえというラベルのラジオボタンがあります。ユーザーがはいのラベルをクリックした場合、ラジオボタンはい自体)。これは次のような私のコードです:
<div class="field">
<%= f.label :autolyse %><br />
<%= f.label :autolyse, "Yes", :value => "Yes" %>
<%= f.radio_button :autolyse, true%>
<%= f.label :autolyse, "No", :value => "No" %>
<%= f.radio_button :autolyse, false, :checked => true %>
</div>
最初のラベルはグループ用であり、グループに「Autolyse」というラベルを付けます。次に、「はい」のラベルが必要です。これを選択するとtrueに設定され、次のラベルは明らかにfalseになります。これを正しく設定するにはどうすればよいですか?
label(object_name、method、content_or_options = nil、options = nil、&block) を参照してください
<div class="field">
<%= f.label :autolyse %><br />
<%= f.label :autolyse, "Yes", :value => "true" %>
<%= f.radio_button :autolyse, true %>
<%= f.label :autolyse, "No", :value => "false" %>
<%= f.radio_button :autolyse, false, :checked => true %>
</div>
ユーザーが選択したオプションを選択したままにする場合は、パラメーターを検証する必要があります。次のようになります。
<div class="field">
<%= f.label :autolyse %><br />
<%= f.label :autolyse, "Yes", :value => "true" %>
<%= f.radio_button :autolyse, true, !!params[:autolyse] %>
<%= f.label :autolyse, "No", :value => "false" %>
<%= f.radio_button :autolyse, false, !!params[:autolyse] %>
</div>
オブジェクトプロパティから実行する場合は、オブジェクトプロパティのparams変数を置き換えるだけです。
<div class="field">
<%= f.label :autolyse %><br />
<%= f.label :autolyse, "Yes", :value => "true" %>
<%= f.radio_button :autolyse, true, [email protected] %>
<%= f.label :autolyse, "No", :value => "false" %>
<%= f.radio_button :autolyse, false, [email protected] %>
</div>