オリジナルアプリを開発する中で、ルーティングを確認する機会が増えてきました。
普段は、ターミナルにrails routesをたたき、確認していたのですが、ルーティングの数が増えるにつれて、見辛くなってきました。
$ rails routes
Prefix Verb URI Pattern Controller#Action
sessions_new GET /sessions/new(.:format) sessions#new
root GET / static_pages#home
help GET /help(.:format) static_pages#help
about GET /about(.:format) static_pages#about
contact GET /contact(.:format) static_pages#contact
signup GET /signup(.:format) users#new
POST /signup(.:format) users#create
login GET /login(.:format) sessions#new
POST /login(.:format) sessions#create
logout DELETE /logout(.:format) sessions#destroy
users GET /users(.:format) users#index
POST /users(.:format) users#create
new_user GET /users/new(.:format) users#new
edit_user GET /users/:id/edit(.:format) users#edit
user GET /users/:id(.:format) users#show
PATCH /users/:id(.:format) users#update
PUT /users/:id(.:format) users#update
DELETE /users/:id(.:format) users#destroy
なかなかに見にくいし、参照したい箇所にたどり着くまで少し時間がかかる。
##特定のルーティングのみ参照できるようにする方法
$ rails routes | grep root
root GET / static_pages#home
上記のように、ターミナルのパイプ機能を使って、grepコマンドを繋ぐことで特定のルーティングだけ参照できるようになります。
$ rails routes | grep users
signup GET /signup(.:format) users#new
POST /signup(.:format) users#create
users GET /users(.:format) users#index
POST /users(.:format) users#create
new_user GET /users/new(.:format) users#new
edit_user GET /users/:id/edit(.:format) users#edit
user GET /users/:id(.:format) users#show
PATCH /users/:id(.:format) users#update
PUT /users/:id(.:format) users#update
DELETE /users/:id(.:format) users#destroy
こちらは、usersリソース関するルーティングのみ参照できます。
ターミナル上では、パイプ機能を使って、grepコマンドを繋ぐことで、特定のルーティングのみ参照できるようになりましたが、ブラウザ上でも確認できる方法を発見しました!
そして、ターミナルで見るより見やすい!!!!!!!
ではでは、本題に入っていきます。
##ブラウザ上で、ルート定義を確認する方法
(http://localhost:3000/rails/info/routes)
にアクセスするだけです!
左の列から
-Helper
-HTTP Verb
-Path
-Controller#Action
となっていて、構成はターミナルと変わりません。
Pathの下にある、Path Matchという検索欄から、特定のルーティングのみ検索できます。
これが、めちゃくちゃ便利です!
速度的にもターミナルでrails routesで検索するより速いので、
最近はブラウザ上で、ルーティングを確認するようにしています!
参考文献
Ruby on Rails | Rails4 | ブラウザ上でrouteの設定を確認
【Ruby on Rails】ルーティングを確認する方法【config/routes.rb】
bundle exec rails routesで特定のroutesのみ表示する - Qiita