テクニカル雑記帳です
メソッドチェーンを利用する
環境や条件
- http://localhost:8000/test
- /htdocs/laravelapp/app/Http/Controllers/Controller.php
- /htdocs/laravelapp/resources/views/helloworld/index.blade.php
- /htdocs/laravelapp/app/Http/Middleware/TestMiddleware.php <- これをメソッドチェーンで定義したい
- 以下をweb.phpへ追加
Route::get('test','Controller@index')
->middleware(TestMiddleware::class);
上記だけだとエラーが発生
- エラー内容
[ReflectionException]
Class App\Http\Middleware\TestMiddleware does not exist
→ 「TestMiddlewareなんてクラスはありません」と言われています
- 解決方法
→use文が抜けていました
use App\Http\Middleware\TestMiddleware; //これが抜けていた
Route::get('test','Controller@index')
->middleware(TestMiddleware::class);
結論(文法)
use 目的のミドルウェアまでのパス
Route::get('hoge1')
->middleware(mdlwr1::class)
->middleware(mdlwr2::class); //複数の場合連結して書く