保存時:なぜRailsの中に保存し、チェックボックス、ちょうど最後の要素のform_forで正しく
- @questions.each do |secret_question|
= f.check_box :question, {multiple: true}, secret_question.id, 0
= f.label :question, secret_question.body
私は最後の要素をチェックした場合、保存中 - ベースでは、正しい値を保存し、
が、私は「場合他の要素をチェックしました(最初から最後から2番目まで) - ベースで '0'を保存しました
何が問題なのですか? ありがとう
アップデート1:コントローラで はのparamsを取得:
private
def contact_params
params.require(:contact).permit(:name,... :secret_question)
end
アップデート2: 結果形式:
<form id="new_contact" class="new_contact" method="post" accept-charset="UTF-8" action="/contacts" enctype="multipart/form-data"
<input type="hidden" value="0" name="contact[secret_question][]"></input>
<input id="secret_question_1" type="checkbox" name="contact[secret_question][]" value="1"></input>
<label for="secret_question_1">1</label>
<input type="hidden" value="0" name="contact[secret_question][]"></input>
<input id="secret_question_2" type="checkbox" name="contact[secret_question][]" value="2"></input>
<label for="secret_question_2">2</label>
<input type="hidden" value="0" name="contact[secret_question][]"></input>
<input id="secret_question_3" type="checkbox" name="contact[secret_question][]" value="3"></input>
<label for="secret_question_3">3</label>
<input type="hidden" value="0" name="contact[secret_question][]"></input>
<input id="secret_question_4" type="checkbox" name="contact[secret_question][]" value="4"></input>
<label for="secret_question_4">4</label>
'question.body'の代わりに' secret_question.id'、 'secret_question.body'がある場合、' question.body'フォームが正しく見えます。 form_forによって生成されたparamsとhtmlの入手方法を示してください。 –
そして、どのようにパラメータを保存しますか? –
連絡先コントローラの作成メソッドのcontact.save。 – Vitalina