Ruby on rails 复选框标记:已调用并检查状态错误

Ruby on rails 复选框标记:已调用并检查状态错误,ruby-on-rails,Ruby On Rails,我试图在复选框标记上使用:called方法,并记住来自DB的布尔值的状态 如果我在没有checked参数的情况下设置check_box_标记,它会使用called方法将检查显示并保存到db中,但是我不能在同一个check_框_标记上同时使用checked和called 这是密码 编辑 根据雨果·洛格曼的建议,我从表格改为表格标签: <%= form_tag(courses_pensum_path(course_pensum.id), method: :put, remote: true,

我试图在复选框标记上使用:called方法,并记住来自DB的布尔值的状态

如果我在没有checked参数的情况下设置check_box_标记,它会使用called方法将检查显示并保存到db中,但是我不能在同一个check_框_标记上同时使用checked和called

这是密码

编辑 根据雨果·洛格曼的建议,我从表格改为表格标签:

<%= form_tag(courses_pensum_path(course_pensum.id), method: :put, remote: true, id: "edit_courses_pensum_#{course_pensum.id}") do %>
              <%= hidden_field_tag(:pensum_id, value=current_pensum.id) %>
              <%= hidden_field_tag(:course_id, value=course.id) %>
              <div class="form-inline">
                <%= check_box_tag name="type[]", value="other_area", checked: (course_pensum.other_area ? true : false),
                    :called, :onclick => "$('#edit_courses_pensum_#{course_pensum.id}').submit()" %>
                <%= label_tag 'OA', nil, class: "checkbox" %>
              </div>
            <% end %>

“$('#编辑(课程)(课程(pensum){课程(pensum.id}')。提交()”%>
由于它显示了复选框标记的参数错误,我想这是一个愚蠢的问题,但我没有看到它


谢谢你的帮助

因为我认为这是一个语法错误,这里的一个朋友帮我弄明白了

这就是我在表格中得到的结果

<%= form_tag(courses_pensum_path(course_pensum.id), method: :put, remote: true, id: "edit_courses_pensum_#{course_pensum.id}") do %>
              <%= hidden_field_tag(:pensum_id, value=current_pensum.id) %>
              <%= hidden_field_tag(:course_id, value=course.id) %>
              <div class="form-inline">
                <%= check_box_tag "type[]", "other_area", course_pensum.other_area, 
                    :onclick => "$('#edit_courses_pensum_#{course_pensum.id}').submit()",
                    disabled: (current_user.role?('student') ? true : false ) %>
                <%= label_tag 'OA', nil, class: "checkbox" %>
<% end %>

“$('#编辑(课程)(课程(pensum){课程(pensum.id}')。提交()”,
已禁用:(当前用户角色?('student')?真:假)%>

谢谢大家!

你为什么要把表单标签和非表单标签混在一起?使用f.check\u-box:called,:onclick=>“yourhandler”。我得到一个为f调用的命名方法错误。check\u-box:called:onclick+>xx,该表单用于连接表,其中包含多个到。。。不知道这是不是影响它的原因!