PHPのフレームワークLaveral 8でコントローラーを追加したら、
「Target class [コントローラ名] does not exist」というエラーが出て解消に苦労しましたが解消しました!
この記事では、解消方法を紹介します。
解消方法:Laveral8特有のエラーらしい
筆者は、以下の環境で開発しています。
- 筆者の開発環境
- MacOS Catalina 10.15
- PHP 7.3.8
- Laravel Framework 8.1.0
筆者の環境では、「プロジェクトroot/routes/web.php」ファイルに以下のように記載したら、「Target class [コントローラ名] does not exist」エラーは解消しました。
#↓作成したコントローラのパス記述 use App\Http\Controllers\SimpleLoginController; #↓ v8だと左記のような書き方はNGらしい。前バージョンだったらOK? #Route::post('/login', 'SimpleLoginController@login'); #↓以下のように記載したらエラーが出なくなった Route::post('/login', [SimpleLoginController::class, 'login']);
以下のコマンドを実行して、エラーが出なければ設定成功です。
php artisan route:list
その他、解消方法いろいろ
その他、「Target class [コントローラ名] does not exist」エラーが出たときの解消方法を書いておきます。
- 追加したコントローラ名とweb.phpで入力したものは一致しているか(小文字、大文字に注意)
- web.phpにそもそもコントローラ名を設定していない
- コントローラを指定の場所(ルート/app/Http/Controllers以下)に追加しているか?
どうしたら解消までの時間を早くできる?
今回、解消に時間がかかった理由は、バージョンを考慮せずに、他の記事を参考にしたことです。記事通りにやっても上手く行かないときは、バージョンを確認したほうが良さげです。
まずは、1次情報(公式サイト)を確認しましょう!
めでたしめでたし
\転職サポートがある転職サービス4選!!(うち2件はIT未経験OK)/
サービス名 | ![]() |
![]() |
![]() |
![]() |
---|---|---|---|---|
未経験 | 未経験OK | 未経験OK | 経験者向け | 経験者向け |
公開の求人数 | ITエンジニア全体で35695件 ITエンジニア未経験で4000件 |
ITエンジニア全体で1万件以上 ITエンジニア未経験で600件以上 |
5,000件以上 | 2500件以上 |
利用対象 | 全職種 | 全職種 | IT特化 | ゲーム特化 |
特徴 | ✓転職エージェントが伴走 ✓求人数が多い |
✓誰もが知る転職サービス ✓経歴を登録しておくとオファーが来る |
✓IT専門のエージェントが対応 ✓転職成功すると年収200万円以上の大幅アップがある |
✓ゲーム転職に強い ✓有名ゲーム会社との取引が多い |
転職サポート内容 |
|
|
|
|
公式サイト | リクルートエージェント | リクナビネクスト | レバテックキャリア | シリコンスタジオ |