从路由定义中删除Id

时间:2013-02-05 12:12:21

标签: ruby-on-rails

这是我的路线:

PUT    /welcome/:id(.:format)      welcome#update

我想从路线定义中删除:id。

换句话说,我想在不发送id的情况下使用更新功能。

所以在我的routes.rb中,我试着定义:

resources :welcome
match '/welcome/:id' => 'welcome#update', :via => :put

然后我跑了rake routes,但一切都没发生。

2 个答案:

答案 0 :(得分:2)

put '/welcome' => 'welcome#update'之前使用resources :welcome,因此它优先

更新:格式化

put '/welcome' => 'welcome#update'
resources :welcome

答案 1 :(得分:2)

你真的想要使用看跌期权请求吗?我认为你应该使用自定义操作来处理这个问题。但是如果你想覆盖默认路由,你可以这样做

match 'welcome/' => 'welcome#update', :via => 'put'
resources :welcome, :except => [:update]