Ruby on rails 如何编辑对象数组的单个字段?
我正在尝试编辑一组用户。我想用名称和复选框列表呈现表。我很接近,但我错过了一些东西 我的表格是这样的:Ruby on rails 如何编辑对象数组的单个字段?,ruby-on-rails,ruby-on-rails-3.2,Ruby On Rails,Ruby On Rails 3.2,我正在尝试编辑一组用户。我想用名称和复选框列表呈现表。我很接近,但我错过了一些东西 我的表格是这样的: <%= form_for 'users[]', :url => approve_users_path, :html => {:class => 'form-horizontal'} do |f| %> <tbody> <% for user in @users %> <%= fields_for user do |u| %
<%= form_for 'users[]', :url => approve_users_path, :html => {:class => 'form-horizontal'} do |f| %>
<tbody>
<% for user in @users %>
<%= fields_for user do |u| %>
<tr>
<td><%= user.name %></td>
<td><%= u.check_box :vouched %></td>
</tr>
<% end %>
<% end %>
</tbody>
<% end %>
approve_users_path,:html=>{:class=>'form horizontal'}do | f |%>
产生
<tr>
<td>steve cabillero</td>
<td><input name="user[vouched]" type="hidden" value="0" /><input id="user_vouched" name="user[vouched]" type="checkbox" value="1" /></td>
史蒂夫·卡比莱罗
但是,我需要用户[id][vouched]形式的输入名称,vouched是一个虚拟属性
当我尝试使用f.复选框时,我得到一个method not found错误。如果您未使用表单中的特定资源,则应使用
表单标记。我还建议使用#each
而不是for循环和check(复选框)标记作为复选框
<%= form_tag approve_users_path, :class => 'form-horizontal' do %>
<tbody>
<% @users.each do |user| %>
<tr>
<td><%= user.name %></td>
<td><%= check_box_tag "users[#{user.id}][vouched]" %></td>
</tr>
<% end %>
</tbody>
<% end %>
“表单水平”do%>