記事の内容
概要
コントローラーは、リクエストを処理し適切なレスポンスを返すためのクラスです。
コントローラーの作成
【実行内容】
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/SampleControllerAPIコントローラー
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