0

Ruby on Rails で、複数のリソースのベース URL に別の RESTful アクションを追加する方法はありますか? 私はこのようなものを探しています:

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]しかし、それはコントローラーの値を保持しません。

4

1 に答える 1

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

どちらも users コントローラーの update_all アクションにルーティングします。

資力

于 2012-08-14T18:16:28.757 に答える