今回はルーティングに名前を指定する方法を解説したいと思います。URLや飛び先を自由にカスタマイズできるので、ぜひマスターして実装の幅を広げていきましょう。

URI Patternの指定
まずはURI Patternの指定方法から見ていきましょう。URI Patternとはルーティングのパスを指し、そのパスにアクセスされた際、特定のコントローラのアクションを動かします。
↓ URI Patternはここ

URI Patternをカスタマイズするには、routes.rbのHTTPメソッド以下に指定したいパスを記述します。記述例を見てみましょう。
routes.rbを以下のように記述しました。
Rails.application.routes.draw do
get "facebook", to: 'users/registrations#select', as: :select_registration
end
すると、以下のようにURI Patternがfacebookに置き換わります。

このようにroutes.rbのHTTPメソッド以下(get ~、post ~)に指定したいパスを記述すると、URI Patternをカスタマイズすることができます。
Prefixの指定
続いてPrefixをカスタマイズしてみましょう。Prefixとはパスが入った変数のようなものです。Prefix_pathと記述することで、URI Patternと同じ扱いになります。
↓ Prefixはここ

Prefixをカスタマイズするには、roites.rbで「as: :~」と記述します。同様に記述例を見てみましょう。
routes.rbを以下のように編集しました。
Rails.application.routes.draw do
get "facebook", to: 'users/registrations#select', as: :google
end
すると、以下のようにPrefixがGoogleに置き換わっていると思います。

このようにroutes.rbのas以下に指定したい文字列を記述すると、Prefixをカスタマイズすることができます。
Controller#Actionの指定
最後にController#Actionの指定方法を見ていきます。Controller#Actionとは、ここでいう/facebookというパス(もしくはgoogle_path)にアクセスした際に、どのコントローラーのアクションを動かすのかということ表しています。
Controller#Actionを指定するには、routes.rbのto以下を編集することで可能になります。記述例を同様に見ていきましょう。
Rails.application.routes.draw do
get "facebook", to: 'platform#yahoo', as: :google
end
するとrails routesの結果は以下のようになります。

このようにroutes.rbのto以下を編集することで、Controller#Actionをカスタマイズすることができます。
まとめ
- routes.rbのHTTPメソッド以下に指定したいパスを記述すると、URI Patternをカスタマイズすることができる
- routes.rbのas以下に指定したい文字列を記述すると、Prefixをカスタマイズすることができる
- routes.rbのto以下を編集することで、Controller#Actionをカスタマイズすることができる
参考
Railsガイド: https://railsguides.jp/routing.html
今回はルーティングに名前を指定する方法を解説しました。好きな文字列をパスに指定することができるので、実装の幅が広がりそうですね。この機会にrails routesの使い方や、routes.rbの記述方法なども併せて復習しておいてください。