我在rails中有一个嵌套路由,我需要更改:id的名称,我不想要:id因为我还有一个其他字段用作参数...我一直在谷歌上搜索但是找不到这样做的方法......有什么想法吗?
我有:
resources :user do
resources :elements, :only=>[:create,:destroy]
end
并生成一个rake路线:
user_elements POST /users/:user_id/elements(.:format) elements#create
user_elements DELETE /users/:user_id/elements/:id(.:format) elements#destroy
我需要像
这样的东西user_elements POST /users/:user_id/elements(.:format) elements#create
user_elements DELETE /users/:user_id/elements/:CHANGED(.:format) elements#destroy
谢谢!
答案 0 :(得分:1)
我建议不要改变惯例。您可能需要手动声明路线。
那就是说,这样的事可能会奏效:
resources :users do
post 'elements(.:format)' => 'elements#create'
delete 'elements/:changed(.:format)' => 'elements#destroy'
end
答案 1 :(得分:0)
match "/users/:user_id/elements/:CHANGED(.:format)" => 'elements#destroy'
这可以做到!