У меня есть форма, которая имеет петлю, как вы можете видеть ниже.Одна кнопка внутри цикла (mass_assignt)
Моя цель:
text | checkbox |
text2 | checkbox |
text3 | checkbox |
text4 | checkbox |
______
button
------
Если я нажал на кнопку мои изменения таблицы, если я выбираю опцию конечно. Таким образом, его одна кнопка в одной форме имеет один цикл.
ПРОБЛЕМА:
Только в прошлом один наклеивается успешно, (не знаю почему), например, если я изменил последний элемент, это нормально, но когда я изменил первый, второй, например, и последний, я получаю изменения только в прошлом один :(
Doesnt SEE MY LOOP я думаю :(
мое шоу вид
<%= form_for :task, :url => { :controller => :tasks, :action => :update } do |f| %>
<% @tasks.each_with_index do |task, index| %>
<%= f.fields_for task do |task_form| %>
<%= task_form.text_field :task %> | <%= task_form.check_box :is_active %> <%= task_form.hidden_field :id %>
<% end %>
<% end %>
<br/><br/>
<%= f.submit 'Update' %>
<% end %>
мой контроллер:
def show
@tasks=Task.find(:all)
end
def update
tasks=Task.find(:all, :conditions => ["id=?", params[:task][:id]])
tasks.each do |task|
task.task=params[:task][:task]
task.save
end
end
И то ошибка я получаю:
{"utf8"=>"✓",
"authenticity_token"=>"vn0DUQhRa2zBguCFRf/fY/cYnzKYAkio0MwDUd4/mC8=",
"task"=>{"task"=>{"task"=>"dlaj testa!",
"is_active"=>"1",
"id"=>"11"}},
"commit"=>"Update"}
undefined method `each' for nil:NilClass