拉拉维尔路由中的'@'语法是否已弃用?

  • 本文关键字:是否 语法 路由 laravel
  • 更新时间 :
  • 英文 :


自从我上次在laravel中编码以来已经很长一段时间了,当我尝试在API路由中注册一个简单路由时:

Route::post('/register', 'AuthController@register');

我得到了";目标类[AuthController]不存在"错误我通过注册实现了这一点

use AppHttpControllersAuthController;
Route::post('/register', [AuthController::class, 'register']);

我很困惑,看了一下文档,没有发现任何对第一个语法的引用。它是消失了,我不知道,还是我做错了什么?

该更改是在Laravel 8中引入的。以前,路线在RouteServiceProvider:中使用名称空间

// ...
protected $namespace = 'AppHttpControllers';

该值自v8+起设置为null。这就是为什么您会有错误响应。所以你有两个选择:

  • A(在RouteServiceProvider中添加前缀
  • B( 使用FQCN并在解决时导入类(推荐使用,有助于IDE和静态分析AFAIK(

相关内容

最新更新