Laravel8的路由问题 target class not exits

在routes/web.php创建一个路由

Route::get('/test', 'TestController@index');

地址栏输入127.0.0.1/test,会出现如下报错信息

在之前laravel的版本中,这样写是没有问题的,但是在laravel8就不行了,laravel8去掉了默认路由组的命名空间,有两种解决的办法

1、修改RouteServiceProvider.php文件

protected $namespace = "App\Http\Controllers";

public function boot()
{
$this->configureRateLimiting();
$this->routes(function () {
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('routes/web.php'));

Route::prefix('api')
->middleware('api')
->group(base_path('routes/api.php'));
});
}

修改之后就可以和原来一样写路由规则了。

2、按照官方的文档
routes/web.php

use App\Http\Controllers\UserController;

Route::get('/user', [UserController::class, 'index']);
 
这种写法是官方推荐的,但是路由文件会引入许多的类,看上去没有之前简洁了。既然之前的写法简单,为什么在laravel8版本中反而复杂了?欢迎大家在评论区进行讨论。

我采用的是第一种方法,有简单的用复杂的,我只是一名ctrlcv转载请注明出处:

转载自http://lxfamn.cn/blog

未经允许不得转载:lxfamn » Laravel8的路由问题 target class not exits

赞 (0) 打赏

置顶推荐

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏