laravel8(一)Target class [XXXXXController] does not exist.錯誤的解決辦法


Laravel 8配置好路由后,訪問提示:

Target class [XXXXXController] does not exist.

錯誤。

出現這個錯誤的原因是Laravel8對路由命名空間做出了更新(詳見:路由命名空間更新),而我們仍然在使用Laravel6或者7版本的方式寫路由。

Laravel 8路由配置方式:

use App\Http\Controllers\UserController;
 
Route::get('/users', [UserController::class, 'index']);

Laravel 6/7路由配置方式:

Route::get('/user', 'UserController@index');

請注意Laravel 8中必須要先引用使用到的控制器,或者在定義路由時加上控制器的命名空間,如果仍然想使用Laravel 6/7版本的路由配置方式,那么取消RouteServiceProvider.php中對$namespace的注釋即可。

// protected $namespace = 'App\\Http\\Controllers';//取消對這句代碼的注釋。

有好的建議,請在下方輸入你的評論。

歡迎訪問個人博客
https://guanchao.site

歡迎訪問小程序:
在這里插入圖片描述


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM