IT女子のHappy × IT日記

IT女子がお届けする便利情報、Happyなことを共有します。

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

 

以上です。