我正在使用多个嵌套资源:
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
,所以我认为我走在了正确的轨道上。我知道有人评论说要寻找答案,所以希望这会有所帮助。
答案 0 :(得分:0)
尝试
edit_user_client_position_path(@user, @client, @position)