Ruby on rails 使用简单表单在单击时更新待办事项列表任务

Ruby on rails 使用简单表单在单击时更新待办事项列表任务,ruby-on-rails,simple-form,strong-parameters,wice-grid,Ruby On Rails,Simple Form,Strong Parameters,Wice Grid,我正在尝试使用简单表单来更新一个嵌套对象,只需单击一个按钮。我正在制作一个待办事项列表,其中单个任务/项目嵌套在整个列表中。单击按钮应将任务的completed属性更新为true。在我尝试在Wice Grid中重新创建表之前,按钮单击更新工作正常。出于某种原因,相同的代码不再适用于WiceGrid 当我在HAML中手动构建表格时,此更新按钮起作用: %td = simple_form_for [@checklist, item] do |f| = f.hidden_field :co

我正在尝试使用简单表单来更新一个嵌套对象,只需单击一个按钮。我正在制作一个待办事项列表,其中单个任务/项目嵌套在整个列表中。单击按钮应将任务的completed属性更新为true。在我尝试在Wice Grid中重新创建表之前,按钮单击更新工作正常。出于某种原因,相同的代码不再适用于WiceGrid

当我在HAML中手动构建表格时,此更新按钮起作用:

%td
  = simple_form_for [@checklist, item] do |f|
    = f.hidden_field :completed, :value => true
    %button.btn.btn-success.btn-sm Complete

一旦我使用WiceGrid重建了表,我就会不断收到一条错误消息。下面是WiceGrid部分。这两者有什么区别

:erb
  <%# show_filters: :when_filtered %>
  <%= grid(@tasks_grid) do |g|

    g.column  name:  'To Do', attribute: 'description' do |task|
      task.description
    end

    g.column  name:  'Status', attribute: 'completed' do |task|
      task.completed ? 'Completed' : ''
    end

    g.column name:  'Due Date', attribute: 'due_date' do |task|
      task.due_date.strftime("%B %d, %Y")
    end

    g.column do |task|
      "<button type='button' class='btn btn-primary btn-sm' data-toggle='modal' data-    target='#task_#{task.id}'>Edit</button>".html_safe
    end

    g.column do |task|
      link_to('Delete', wedding_checklist_checklist_item_path(@checklist, task), class: "btn btn    -warning btn-sm", :method => :delete, :data => { :confirm => 'Are you sure you want to     delete this task?' })
    end

    g.column do |task|
      simple_form_for [@checklist, task] do |f|
        f.hidden_field :completed, :value => true
        f.submit "Complete", class: "btn btn-success btn-sm"
      end
    end

  end -%>
我一直得到的错误是:参数丢失或值为空:检查表\u项


我以为“任务”已经通过了检查表项目?

我使用了一个部分功能,但不知何故,完整功能现在可以工作了:

g.column do |task|
  render partial: 'complete_task', locals: {item: task}
end
g.column do |task|
  render partial: 'complete_task', locals: {item: task}
end