0

「ステップ」というモデルがあります。私のステップ モデルでは、ユーザーが多肢選択式の質問を作成できるようにしています。その結果、1 から 4 までの 4 つのデータベース列があります。これらのデータベース列を取得して、ラジオ ボタンを使用して質問の形式にしようとしています。私の問題は、 @step.choice_one が表示されないことです(他のものも表示されません)。さらに、ラジオ ボタンが表示されますが、他のボタンを無効にすることなく各ボタンをクリックできるため、それらは互いに関連していません。どんな助けでも本当に感謝します。

<%= fields_for :steps do |f| %>
    <div class="multipleChoice">
        <div>
          <%= f.label :choice_one, "1)" %>
          <%= f.radio_button :choice_one, @step.choice_one, :checked => true, class: 'icheck' %>
        </div>
        <div>
          <%= f.label :choice_two, "2)" %>
          <%= f.radio_button :choice_two, @step.choice_two, class: 'icheck' %>
        </div>
        <div>
          <%= f.label :choice_three, "3)" %>
          <%= f.radio_button :choice_three, @step.choice_three, class: 'icheck' %>
        </div>
        <div>
          <%= f.label :choice_four, "4)" %>
          <%= f.radio_button :choice_four, @step.choice_four, class: 'icheck' %>
        </div>
    </div>
<% end %>
4

2 に答える 2

1

ここでの問題は、1 つのフィールドに 4 つの選択肢があるのではなく、4 つの異なるフィールドのセットにラジオ ボタン グループを使用していることです。したがって、Rails はそれぞれに異なるname属性を与えています。

それぞれradio_buttonに同じ名前を付けてみてください: 'step', 例:

<%= fields_for :steps do |f| %>
    <div class="multipleChoice">
        <div>
          <%= f.label :choice_one, "1) #{@step.choice_one}" %>
          <%= f.radio_button :choice_one, @step.choice_one, {name: 'step', checked: true, class: 'icheck'} %>
        </div>
        <div>
          <%= f.label :choice_two, "2) #{@step.choice_two}" %>
          <%= f.radio_button :choice_two, @step.choice_two, {name: 'step', class: 'icheck'} %>
        </div>
        <div>
          <%= f.label :choice_three, "3) #{@step.choice_three}" %>
          <%= f.radio_button :choice_three, @step.choice_three, {name: 'step', class: 'icheck'} %>
        </div>
        <div>
          <%= f.label :choice_four, "4) #{@step.choice_four}" %>
          <%= f.radio_button :choice_four, @step.choice_four, {name: 'step', class: 'icheck'} %>
        </div>
    </div>
<% end %>

1値としてスルーを使用し4ましたが、必要に応じて選択できます。

于 2013-09-09T20:49:46.587 に答える
0

ラジオ ボタンが正しくペアになるには、ラジオ ボタンのname属性が他のラジオ ボタンの属性と一致している必要があります。ruby の構文はわかりませんが、 を除くどこでも 4 つの異なる名前を使用しているのをclass目にするので、choice_one、choice_two などをname:)として設定していると思われます。

于 2013-09-09T20:44:31.947 に答える