今までルーティング結果を確認するときは「rails routes」コマンドを使っていました。ポートフォリオ作成時にルーティングが複雑になり、このコマンドの表示がとても見にくくなったため、もっと見やすく表示してくれるコマンドがないかを探したところ、ありました!今回はそれらをご紹介いたします!
※初心者目線で書いていますので、もし間違っているところがありましたらご指摘いただけると嬉しいです🙇🏼
対象のバージョン
Rails 6以降
※Rails 5以前はこれからご紹介するコマンドは使えません。
rails routesコマンドとは?
routes.rbに設定したルーティングの結果を表示するためのコマンドです。
以下のように表示されます(作成したポートフォリオのルーティングを使って説明をしていきます)。
ルーティングの数が少ない場合、rails routesの出力も見やすいと思いますが、ルーティングが増えるとかなり見づらくなります。ターミナルの画面を大きくしても小さくしても見づらく、これがストレスに感じる方も多いのではないでしょうか(私もその一人です。仲間がいると信じています)。
では、ここからルーティングに関する便利なコマンドをご紹介していきます💁🏼
便利なコマンド①:すべてのルーティングを見たい時
rails routes --expanded
⚠️expandedにつけるハイフンは2つです!!
いかがでしょうか!アクションごとに線で区切られているので、どのアクションがどのパスなのか、迷子になりませんよね!これを初めて見た時はとても感動をしました。
便利なコマンド②:特定のコントローラのルーティングだけを見たい時
rails routes --expanded --grep コントローラ名
例えば、usersコントローラのルーティング結果をみたい場合はrails routes --expanded --grep users と出力すると、usersコントローラのみのルーティング結果が表示されます。
便利なコマンド③:特定の文字列を含むルーティングを確認したい場合
rails routes --expanded --grep 文字列
例えば、「search」がつくルーティング結果を確認したい場合はrails routes --expanded --grep searchと出力します。そうすると、searchがつくルーティング結果が表示されます。
コマンドを使わないでルーティングを確認する方法
「http://localhost:3000/rails/info/routes」
をブラウザに打つときれいなルーティング画面が表示されます。
⚠️サーバーを立ち上げないと見られませんので、ご注意を!
まとめ
いかがでしたでしょうか?少しでも皆様のストレスが軽減できたら嬉しいです。
他にもっと便利なコマンドがあれば、ぜひお教えください!
初めて記事を書いたので、読みにくい部分があったかもしれませんが、最後までお読みいただき、ありがとうございました🙇🏼
参考文献
https://www.rubyinrails.com/2019/11/05/rails-routes-expanded-option/
https://railsguides.jp/routing.html