0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Target class [App\Http\Controllers\***] does not exist. 】何をやっても抜け出せない人、これかもよ。【Laravel】

Last updated at Posted at 2024-11-17

個人的によく見かけるこのエラーについて

【Target class [App\Http\Controllers***] does not exist. 】

解決方法を調べると、主にこれら4つの方法が出てきます。

--

①Controller.php内の namespaceのパスに誤りがある。
  namespace App\Http\Controllers\Auth;

②route内のパスに誤りがある。
  Route::get('/hello','App\Http\Controllers\HelloController::class','index');

③routeでController名だけ指定した場合に、そもそも指定のControllerをuseし忘れている。
  use App\Http\Controllers\HelloController; ←useしてる?
  Route::get('/hello','HelloController::class','index');

④大文字小文字の違い・スペルミス
  × App\Http\Controller\ *** ←Controllerにsがついてない!

--

先輩エンジニアの皆さん、本当にいつも良質な情報をありがとうございます(涙)

--

でもね、エンジニアの勉強を始めたころに
どれにも当てはまらないエラーにどハマりしまして
無駄に半日ほど過ごした経験があります。

--

ということで、5つ目の解決方法を提示させていただきたいと思います。
1〜4で解消できなかった方は、ぜひ以下を試してみてください。

(訂正前)
Route::get('user/top', [App\Http\Controllers\UserController::class, 'top']);

(訂正後)
Route::get('user/top', [\App\Http\Controllers\UserController::class, 'top']);

わかりましたか?

_人人人人人人人人人人人人人人人人人人人人人人_
> パスの前にバックスラッシュ一本つけるだけ <
 ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄

以上です。
ご清聴ありがとうございました。

※なぜこのバックスラッシュが必要なときと必要でない時があるのか
わかりきっていない私目のためにお優しい有識者の方ご教授くださりますと幸いです。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?