【发布时间】:2021-01-01 08:25:36
【问题描述】:
安装新版本的 laravel 后,我遇到了上述错误。我已经完成了“composer dump-autoload”并交叉检查了路径,一切似乎都是正确的。我相信每个人都会面临确切的问题。所以请在下面查看我的答案,它会对你有所帮助。
谢谢
【问题讨论】:
安装新版本的 laravel 后,我遇到了上述错误。我已经完成了“composer dump-autoload”并交叉检查了路径,一切似乎都是正确的。我相信每个人都会面临确切的问题。所以请在下面查看我的答案,它会对你有所帮助。
谢谢
【问题讨论】:
升级指南中很好地解释了这个问题。但为了您的快速参考,我将其发布在这里。
在之前的 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 项目来升级您的应用程序,您可能会遇到这种重大变化。
【讨论】: