リソースが3段以上ネストしたときのmap.resourcesの書き方

RESTfulなサービスを実装するとして、対象リソースがその他のリソースとの従属(親子)関係があるときに、Ruby on Railsではmap.resourcesをネストして記述することが可能になっている。例えば、部署(Division)に所属する社員(Employee)のリソース定義であれば、

map.resources :divisions, :path_prefix => ‘/api’ do |divisions| divisions.resources :employees, :controller => ‘api/employees’ end

とすることで、「GET http://localhost:3000/api/divisions/1/employees/2」というURLにApi::EmployeesControllerクラスをマッピングすることができる。この場合、show()メソッドが呼び出され、部署IDと社員IDは、

部署ID

div_id = params[:division_id] # => 1

社員ID

emp_id = params

このエントリーをはてなブックマークに追加

関連記事

Firebase FunctionsデプロイでArtifact Registryのクリーンアップポリシー設定エラーに遭遇した話

Web Serial APIでブラウザからシリアルデバイスを操作する

ウェブブラウザとハードウェアの関係

macOSやLinuxからWindowsに移行したら快適になった話

「エンジニアチームの生産性の高め方」という書籍が出版されました