0
我正在尝试创建一个基本的调查应用程序。在我的调查页面上,我正在循环显示每个答案选项,并将其显示为一个单选按钮或复选框,作为form_for来创建用户的选择。这些选择对于单选(或单选按钮)的问题非常有效,但它们不能保存多选问题。我很确定这与我对复选框的表单有关。Rails form_for check_box
好像我应该做的
<%= f.check_box :answer_id, answer.id %> <%= answer.title %> <br>
类似我如何创建的单选按钮,但抛出一个错误
undefined method `merge' for 14:Fixnum
这里是我的代码显示:
<h3>Questions:</h3>
<ul><% @survey.questions.each do |question| %>
<li><p><%= question.title %></p></li>
<% choice = question.choices.build %>
<% if question.single_response == true %>
<%= form_for [question, choice] do |f| %>
<% question.answers.each do |answer| %>
<%= f.radio_button :answer_id, answer.id %> <%= answer.title %><br>
<% end %>
<%= f.hidden_field :survey_id, value: @survey.id %>
<%= f.submit %>
<% end %>
<br />
<% else %>
<%= form_for [question, choice] do |f| %>
<% question.answers.each do |answer| %>
<%= f.check_box :answer_id %> <%= answer.title %> <br>
<%= f.hidden_field :survey_id, value: @survey.id %>
<% end %>
<%= f.submit %>
<% end %>
<br />
<% end %>
<% end %>
</ul>
任何想法,我需要做的,以保存answer_id选择,以便它真正cr吃了选择?
谢谢!
这似乎是抛出一个错误 - 未定义的方法'answer_id []' –
我更新了我上面的答案。您可能需要调整它以使用您自己的模型名称和方法,并且可能必须将“answer_ids”方法添加到代表用户选择的模型中,但希望这会为您提供一般性要点。绝对看Railscast更详细的演练。 –
这很有道理。我总是想知道_tag是干什么的:)。我非常感谢帮助! –