我正在使用多个嵌套资源,如下所示:
resources :users do
resources :clients do
resources :positions
end
end
resources :clients
resources :positions
一切都在我的模型和控制器中正常工作和设置,但我似乎无法弄清楚为什么这个编辑位置链接没有将用户添加到方法名称中。
<%= link_to 'Edit Position', edit_polymorphic_path([@user, @client, @position]) %>
只输出这个:edit_client_position_path
而不是这个:edit_user_client_position_path
好像:user_id
没有考虑到,但是如果我在http://127.0.0.1:3000/users/1/clients/1/positions/1
页面加载成功时从显示页面中删除了编辑链接。非常感谢任何见解!
更新
我设法让链接几乎按照我之前想要的方式工作。我修改了我的路由文件,如下所示:
resources :users do
resources :clients do
resources :positions
end
end
resources :clients do
resources :positions
end
resources :clients
resources :positions
它现在链接到/clients/1/positions/1/edit
而不是/users/1/clients/1/positions/1/edit
所以我认为我在正确的轨道上。我知道有人评论寻找答案,所以希望这会有所帮助。