Rails

railsで可変のURLを設定する際に気をつけること

全体の流れ

ルーティング→コントローラ(アクション)→ビューの順で処理が行なわれる。

記述

routes.rb
get "posts/:id" => "posts#show"

上記でposts以下にidが来た際に全てshowアクションを実行します。

注意点

何が来てもshowを返してしまうためposts/の処理でshowを返したくない場合、上に記述しないといけない。上から順に処理されて当てはまるとその処理を行う。

routes.rb
get "posts/index" => "posts#index"
get "posts/:id" => "posts#show"