如何将不同的嵌套路由指向一个控制器操作?
一个用户可以是多个组的成员,如公司、项目、组等。它可以请求加入、离开或被管理员删除。
我想访问多个模型的删除操作并销毁配置文件模型中的 belongs_to 记录
我已经有一个多态模型,该模型将请求从配置文件发送到模型(例如公司),并且在接受请求后,配置文件将属于该模型。一旦请求被接受,记录的请求就会被销毁。我觉得会破坏profile和model关系的remove动作应该是requests_controller的一部分,但我猜可能是profile_controller的一部分。
我想我最终需要的是
/_model_/:id/profile/:id/remove
/company/:id/profile/:id/remove
但是我如何让它指向我的请求控制器中的删除操作
或者
/_model_/:id/requests/remove
/company/:id/request/remove
我在我的路线中使用以下代码
resources :companies do
resource :requests do
put 'remove', :on => :member
end
resources :requests do
put 'accept', :on => :member
end
end
这产生了双倍的路线
remove_company_requests PUT /companies/:company_id/requests/remove(.:format)
company_requests POST /companies/:company_id/requests(.:format)
new_company_requests GET /companies/:company_id/requests/new(.:format)
edit_company_requests GET /companies/:company_id/requests/edit(.:format)
GET /companies/:company_id/requests(.:format)
PUT /companies/:company_id/requests(.:format)
DELETE /companies/:company_id/requests(.:format)
accept_company_request PUT /companies/:company_id/requests/:id/accept(.:format)
GET /companies/:company_id/requests(.:format)
POST /companies/:company_id/requests(.:format)
new_company_request GET /companies/:company_id/requests/new(.:format)
edit_company_request GET /companies/:company_id/requests/:id/edit(.:format)
company_request GET /companies/:company_id/requests/:id(.:format)
PUT /companies/:company_id/requests/:id(.:format)
DELETE /companies/:company_id/requests/:id(.:format)
作为