Ruby on rails 参数'answer'uids';

Ruby on rails 参数'answer'uids';,ruby-on-rails,ruby-on-rails-4,simple-form,has-many-through,ruby-on-rails-4.1,Ruby On Rails,Ruby On Rails 4,Simple Form,Has Many Through,Ruby On Rails 4.1,我希望用户能够在表单上填写多项选择题。表格由多个调查组成,每个调查都有多个问题(每个问题都是多项选择) 我似乎无法存储多重调查位。我想要一个答案ID,然后我可以通过::User\u answer relationship保存在一个有很多答案的用户上。但我在挣扎 我得到以下错误: 参数'answer_id'应为数组(get字符串) 这是我的表格: <%= simple_form_for [current_user], :url => competition_enter_path, :m

我希望用户能够在表单上填写多项选择题。表格由多个调查组成,每个调查都有多个问题(每个问题都是多项选择)

我似乎无法存储多重调查位。我想要一个答案ID,然后我可以通过::User\u answer relationship保存在一个有很多答案的用户上。但我在挣扎

我得到以下错误:

参数'answer_id'应为数组(get字符串)

这是我的表格:

<%= simple_form_for [current_user], :url => competition_enter_path, :method => :POST do |u| %>
  <% @surveys.each do |survey| %>
    <%= u.simple_fields_for [survey] do |f| %>

        <div class="contnt1">


        <%= survey.name %>
        <br />
             <% survey.questions.each do |qq| %>
              <%= f.simple_fields_for qq do |q| %>
                      <h3><%= qq.question %></h3>
                      <%=   q.association :answers,
                                          label: false,
                                          collection: qq.answers,
                                          as: :"#{qq.question_type.code}",
                                          :label_method => :answer,
                                          required: true
                      %>
                      <% end %>
                   <% end %>
                </div>

          <% end %>
    <% end %>
        <div class="actions">
          <%= u.submit %>
        </div>
<% end %>
competition_enter_path,:method=>:POST do|u |%>

:答案:, 必填项:true %>
我也有同样的问题。我通过替换以下内容来进行修复:

collection: qq.answers,
与:

据我所知,问题在于表单看到的值是字符串,而不是应答对象。因此,它尝试将字符串发送到应该是应答对象的位置

collection: qq.answers.map{|v| [v.property_for_answer_text, v]}