如果我有型号产品和型号类别。
我在产品索引中有一个表格,显示的产品包含以下列:
<td><%= product.ID %></td>
<td><%= product.NAME %></td>
<td><%= product.category.NAME %></td>
它显示的值如下:
1,沙拉,蔬菜
2,苹果,水果
我希望能够点击蔬菜或水果进行编辑。
我试过了:
<td><%= link_to product.category.NAME, [:edit, product.category] %>
这会带我到一个页面
类别/ 1 /编辑
返回
无法找到带有'ID'=
的产品
相反它应该转到
类别/编辑/ 1
在我的路线中,我有:
match ':controller(/:action(/:ID))', :via => [:get, :post]
resources :categories
在这种情况下使用的正确语法是什么?
答案 0 :(得分:1)
要使用修改后的路径调用类别控制器上的编辑操作,请指定控制器,操作和ID值,如下所示:
Xcode-beta can not be opened while it is being updated
link_to帮助器将正确构建路径以匹配<%= link_to product.category.NAME, { controller: :categories, action: :edit, ID: product.category.id } %>
路径并路由到类别控制器的编辑操作而不是产品控制器(假设category.id == 1)