コントローラー

記事の内容

概要

コントローラーは、リクエストを処理し適切なレスポンスを返すためのクラスです。

コントローラーの作成

【実行内容】

php artisan make:controller コントローラー名

コマンド

php artisan make:controller SampleController

コントローラー定義

【ファイル先】app/Http/Controllers/SampleController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class SampleController extends Controller
{
    // インデックスページを表示する
    public function index()
    {
        return view('sample');
    }
}

ルーティング定義

【oute指定】routes/web.php

<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\SampleController;

Route::get('/sample', [SampleController::class, 'index']);

ビュー定義

【view】resources/views/sample.blade.php

<!DOCTYPE html>
<html>
<head>
    <title>Sample Page</title>
</head>
<body>
    <h1>Sample Page</h1>
</body>
</html>

オプション一覧

リソースコントローラー

CRUD操作に対応した7つのメソッド(index, create, store, show, edit, update, destroy)が自動生成されます。

php artisan make:controller SampleController --resource

【短縮オプション】

php artisan make:controller SampleController -r

モジュールコントローラー

コントローラーをサブディレクトリ(ここではAdmin)に作成します。
※モジュールや機能ごとにディレクトリを分けるときに便利

php artisan make:controller Admin/SampleController

APIコントローラー

APIに特化した構造を持つコントローラーを生成します。

php artisan make:controller SampleController --api

モデルとの連携

指定したモデルを自動でインポートし、データ操作が簡単にできるようになります。

php artisan make:controller SampleController --model=SampleModel

【短縮オプション】

php artisan make:controller SampleController -m SampleModel

シングルアクションコントローラー

シングルアクションコントローラーを作成します。
__invokeメソッドのみを持ち、特定のアクションのみを処理する際に使用

php artisan make:controller SampleController --invokable

【短縮オプション】

php artisan make:controller SampleController -i

フォームリクエストバリデーション

フォームリクエストバリデーション用のメソッドを含むコントローラーを作成します。

php artisan make:controller SampleController --requests
記事の内容
閉じる