📝

【Rails】rails routesコマンドの見方

2023/11/02に公開

アプリケーションの詳細設計時に見返せるようにHTTPメソッドの一覧を載せようと思いましたがせっかくなのでrails routesの際の見方として表示されるものをざっくりと書きたいと思います。

rails routesとは

ルーティングを確認するために入力するコマンドになります。
使い方はCloud9のターミナルで、Railsアプリケーションのディレクトリに移動し下記のこまんコマンドを入力します。

$ rails routes

入力後は下記のように表示されます。

表示される内容

上記の図にてコマンド入力後に4つ文字が表示されました。

URI Pattern(パス)

URI Patternは、ルーティングのうち「パス」を表しています。
「パス」と呼ばれる部分は、実際にアドレスバーに表示されるURLの一部となります。

Controller#Action(アクション)

Controller#Actionでは、ルーティングのうち「アクション」を表しています。

Verb(HTTPメソッド)

HTTPメソッドとは、「サーバーに対してお願いしたい内容の種類」を表したものです。
HTTPメソッド一覧

  • GET(参照)
  • POST(新規作成)
  • PUT(更新)
  • PATCH(一部更新)
  • DELETE(削除)

Prefix(名前)

パスやURLを作るメソッドのプレフィックス(接頭語)です。

詳細設計について

アプリケーション詳細設計では詳細設計は対エンジニア(プログラマ)の設計書になります。
作成するアプリケーションのコントローラ、アクション、HTTPメソッド、URL、目的等を洗い出すのに使用します。
例えばusersコントローラの場合は下記のような内容を洗い出します。

HTTPメソッド URL アクション アクション
GET /users index 一覧表示
GET /users/:id show 詳細表示
GET /users/new new 新規登録画面
POST /users create 登録処理
GET users/:id/edit edit 編集処理
PUT users/:id update 更新処理
DELETE users/:id destroy 削除処理

感想

正直詳細設計で上記のようにurlを洗い出すのが苦手だったのですが、本日メンターさんに対応していただいた際に、個人の意見として詳細設計で細かくurlを決定しなくてもresourcesで作成した後にrails routesで確認するほうがいい場合もあると一例をアドバイスいただけました。こちらはデータの受け渡しが比較的シンプルなrailsだから可能とのことですが、設計をするにあたり何に力をいれるのか気にして作成することは大切だと思いました。本当にざっくりとしたことしか書かなかったので下記の参考ページをみていただけると幸いです。

参考

https://zenn.dev/syu/articles/73ee2e6291fe41
https://railsguides.jp/routing.html
https://ichigick.com/rails-routes/
https://qiita.com/morikuma709/items/956d7c58908cb481d7e8

Discussion