複数のオブジェクトを保存しようとしているときに、次のエラーが発生します。
undefined method `stringify_keys' for #<Array...>
それに対処する方法についてのアイデアはありますか?私の入力:
コントローラ:
def create
@course = Course.find(params[:course_id])
@students = @course.users
@students.each do
@grade = @course.grades.build(params[:grade])
end
@grade.each { |a| a.save }
end
_form.html.erb:
<%= form_for ([@course, @grade]) do |f| %>
....
<% @students.each do |a| %>
<tr>
<td><%= a.last_name %><%= a.first_name %>
<%= f.hidden_field :student_id, :value => a.id, :index => @grade.id %></td>
<td><%= f.text_field :grade_evaluation, :index => @grade.id %></td>
<td><%= f.text_field :comment, :index => @grade.id %></td>
</tr>
....
これにより、グレードの次の params ハッシュが得られます。
{....
"grade"=>[
{"student_id"=>"1",
"grade_evaluation"=>"5",
"comment"=>"you are an idiot" },
{"student_id"=>"4",
"grade_evaluation"=>"5",
"comment"=>"you too" }],
"commit"=>"Create",
"course_id"=>"3"}