SakuraWi - BLog

WEBエンジニア。聴いたお話をまとめておく倉庫的な。スタックストックスタック!

【Ruby on Rails】ルーティングを確認する方法【config/routes.rb】


Ruby on Railsを勉強し始めた時、知っておいた方が便利な「ルーティングの確認方法」についてまとめようと思います。

ルーティングというのは、URLのどこにアクセス(+どんなアクションメソッドで)すれば、どのコントローラーのアクションが実行されるのかを示したものです。

routes.rbのファイルで確認したりする人も多いのではないでしょうか。

Railsガイドでは以下のように書かれています。

Railsのルーターは受け取ったURLを認識し、適切なコントローラ内アクションに割り当てます。ルーターは、ビューでこれらのパスやURLを直接ハードコードすることを避けるためにパスやURLを生成することもできます。

なるほど!わかりやすいですね。それでは、Ruby on Railsにおけるルーティングの確認方法についてみていきましょう。

1. rails routesコマンドを使ってルーティングを確認する

1つめの方法は、ターミナル上でrails routesと打つことです。

config/routes.rbに記載に記載された内容が反映された結果がターミナル上に表示されます。

以下の画像のように表示されると思います。

railsのルーティング例

ターミナル上でアプリを開発している時に非常に便利なコマンドですね。

grepを使って結果の絞り込み

大規模なサービスになってくると、routingの情報も膨大になります。

grepコマンドで結果を絞り込むことでわかりやすくすることが可能です。

rails routes | grep users(調べたい文字列) とすることで、usersと一致する文字列が含まれる結果のみを表示させることも可能です。

rails routes | grep sign_up

2.localhost:3000/rails/infoにアクセスしてルーティングを確認する

rails serverでローカルにサーバをたてている状況であるならば、

localhost:3000/rails/infoにアクセスすることでroutingについて表示することができます。

ブラウザで確認したい時は、こちらの方法がおすすめです。

GETやPOST、またxxx_pathのような表記もあるので実装中でも確認すると便利です。

これだと コマンド+Fなどの検索もしやすいですね。

pathの表記も明確なので開発中にも非常に役たちます。

3. config/routes.rbを直接読むことでルーティングを知る

railsでは、config/routing.rbにルーティングについての情報を書きます。

そのため、こちらのファイルを直接見ることでルーティングについて知ることができます。

github上で他の人が開発しているアプリのルーティングを確認したい時などはこの方法が有効でしょう。

scopename_spaceを活用してみやすく、わかりやすいroutes.rbになっているとよいですね。

オプションについては、railsガイドが非常に参考になります。

Rails のルーティング - Rails ガイド

エディターを開いてコーディングしている途中であるならこちらを参照するのが早いかもしれませんね!

Ruby on Railsでルーティング情報をみるまとめ

以上3つの方法を紹介しました。

ブラウザを開いている時、エディタで実装中、ターミナルでコマンドを叩いている時で場合分けしてすぐにチェックできるようになるとよいでしょう!