将check_mark添加到Edit |未定义的方法

时间:2016-01-17 19:45:42

标签: ruby-on-rails ruby checkbox undefined edit

edit.html.erb 中我尝试了

<%= @routine.check_box :archive %>,导致:ActionView::Template::Error (undefined method 'check_box' for #<Routine:0x007f836fe69de0>):

然后我尝试编辑:

<%= simple_form_for(@routine) do |f| %> 
 <%= f.check_box :archive %>
<% end %>

删除了错误,但当我点击复选框时,它不会更新为true。

模式

t.boolean  "archive",          default: false

routines_controller

def edit
end

def update
  respond_modal_with @routine, location: root_path
end

def routine_params
  params.require(:routine).permit(
  :archive,)
end

1 个答案:

答案 0 :(得分:2)

您需要使用boolean帮助器。查看Available input types列表。

<%= simple_form_for(@routine) do |f| %> 
 <%= f.input :archive, as: :boolean, checked_value: true, unchecked_value: false %>
<% end %>