目标类[Backend \ ServiceController]不存在。 -Laravel,Laravel 8

时间:2020-09-14 15:23:23

标签: laravel laravel-8

安装新版本的laravel后,出现上述错误。我已经完成了'composer dump-autoload'并交叉检查了路径,并且一切似乎都是正确的。我确信每个人都将面对确切的问题。因此,请检查以下我的答案,它将为您提供帮助。

谢谢

1 个答案:

答案 0 :(得分:1)

该问题在升级指南中得到了很好的解释。但为您快速参考,我将在此处发布。

在Laravel的早期版本中,RouteServiceProvider类包含一个值为$ Namespace的属性,其值为App \ Http \ Controllers。此属性的值用于自动添加控制器路由声明的前缀,例如在调用操作助手时生成控制器路由URL。

在Laravel 8中,默认情况下将此属性设置为null。这使您的控制器路由声明可以使用标准的PHP可调用语法,从而为在许多IDE中跳转到控制器类提供了更好的支持:

use App\Http\Controllers\UserController;

// Using PHP callable syntax...
Route::get('/users', [UserController::class, 'index']);

// Using string syntax...
Route::get('/users', 'App\Http\Controllers\UserController@index');

在大多数情况下,这不会影响正在升级的应用程序,因为RouteServiceProvider仍将包含$ namespace属性及其以前的值。但是,如果通过创建全新的Laravel项目升级应用程序,则可能会遇到重大变化。