我有一个表单,使用fields_for函数显示多个现有记录 - 即每行上的不同记录。
每行都有一个提交按钮,因此如果该行上的记录被修改,按该行上的提交按钮将保存更新的记录。
当按下提交按钮时,我想调用'update'方法并将记录的id作为url param(例如units / update / 1)传递,并将编辑后的记录值作为params(即params)传递[])
我的问题是我无法获取要作为URL中的参数传递的记录的ID。即它称为“单位/更新”,而不是“单位/更新/ 1”
我认为相关的代码是:
<%= form_tag url_for( controller: "units", action: "update"), method: "patch", :html => {:id => "edit_form"} do %>
<% for unit in @units %>
<%= fields_for "units[]", unit do |f| %>
** code to display/capture form information goes here **
<td> <%= submit_tag "update" %> </td>
<% end %>
<% end %>
我的routes.rb文件中的相关代码是:
resources :units, except: :show
生成的错误是:
No route matches {:action=>"update", :controller=>"units"}
如何在网址中传递id作为参数?