Laravelのルーティング機能は、HTTPリクエスト(GET、POSTなど)とコントローラやクロージャの対応関係を定義するための仕組みです。以下では、GETルートおよびPOSTルートの定義方法について詳しく説明します。
1. ルーティング定義ファイル
Laravelのルート定義は通常、以下のいずれかのファイルに記述します:
-
routes/web.php:Webブラウザ向けルート(セッション、CSRF保護あり) -
routes/api.php:API向けルート(ステートレス)
2. GETルートの定義
GETリクエストは主に「ページの表示」や「情報の取得」に使用されます。
例:クロージャを使ったGETルート
例:コントローラを使ったGETルート
この例では、UserControllerのshowメソッドが実行されます。
3. POSTルートの定義
POSTリクエストは主に「フォーム送信」や「データの登録・更新」などに使用されます。
例:クロージャを使ったPOSTルート
例:コントローラを使ったPOSTルート
この例では、UserControllerのstoreメソッドが呼び出され、ユーザーデータを保存する処理が実行されることが想定されます。
4. 名前付きルート(オプション)
ルートに名前を付けると、URLをハードコーディングせずに利用できるようになります。
ビューやコントローラ内で次のように使用できます:
5. ルートのグルーピング(参考)
GET/POSTルートを共通のプレフィックスやミドルウェアでまとめることも可能です:
まとめ
| HTTPメソッド | 用途 | Laravelの定義方法 |
|---|---|---|
| GET | データ取得、表示 | Route::get() |
| POST | データ送信、登録 | Route::post() |
それぞれのルートは、クロージャやコントローラクラスに関連付けて処理を記述します。Laravelのルーティングは、柔軟かつシンプルに設計されており、RESTfulなAPIや複雑なWebアプリケーションにも対応できます。
ChatGPT4o 生成日:2025/06/23