在Ruby on Rails中,有没有办法将另一个RESTful动作添加到复数资源的基本URL?我正在寻找这样的东西:
resources :groups do
resources :users do
put on: :base, to: 'users#update_all'
end
end
哪会产生路线:[PUT] groups/:group_id/users => users#update_all
我已经尝试过这样做了:
resources :groups do
resources :users
put 'users', on: :member, to: 'users#update_all'
end
但这并不能保留控制器中params[:group_id]
的值。
答案 0 :(得分:1)
resources :users do
collection do
put '' => 'users#update_all' ## PUT /users
end
end
<强>更新强>
建议这样做:
resources :users do
collection do
put 'update_all' ## PUT /users/update_all
end
end
两者都路由到用户控制器的update_all操作。
<强>资源强>