Resourcesの「ネスト」Ruby on rails
ネストとは
入れ子構造にする。親>子の関係を作ることができる。
例えば、ある商品のレビューを書きたいとき。どの商品に対するレビューか分かるようにしたい。
「do」「end」を書き加えると、ネストに出来る。
どのproducts(商品)に対するreviews(レビュー)か、分かるようになる。
resources :products do
resources :reviews
end
rake routesコマンドでルーティングを確認
Before
reviews GET /reviews(.:format) reviews#index
new_review GET /reviews/new(.:format) reviews#new
上記で設定した通り、productsとreviewsの間にproduct_idが入るようになり、どのproductsに対するレビューか判別できる。
After
product_reviews GET /products/:product_id/reviews(.:format) reviews#index
new_product_review GET /products/:product_id/reviews/new(.:format) reviews#new
以上です。