目标 class [Admin\FirstController] 不存在

Target class [Admin\FirstController] does not exist

我在尝试按照下图在命名空间“Instructor”下创建路由器时遇到问题:

Route in instructor page in routes file

控制器中Instructor命名空间下的方法为:

method inside the controller file

当 运行 路线时,它一直给我以下错误:

Error message

任何人都可以帮助我解决这个问题,因为我是 larevel 的新手,所以我不是定义包和依赖项的专家。

在Laravel 8中,您只需在路由文件中执行以下操作:

Route::get('instructors', [\App\Http\Controllers\Instructor\FirstController::class, 'showUserName']);

或带引号:

Route::get('instructors', ['\App\Http\Controllers\Instructor\FirstController', 'showUserName']);

或使用 use 语句:

use App\Http\Controllers\Instructor\FirstController;

Route::get('instructors', [FirstController::class, 'showUserName']);

然后您可以将所有 use 语句放在顶部。大多数 IDE 可以自动隐藏它们,因此您有一个干净的路线文件。

在 Laravel 8 你可以做:

Route::get('your-route', [App\Http\Controllers\Instructor\YourController::class, 'methodName']);

或者您可以取消注释 RouteServiceProvider 中的以下行

// protected $namespace = 'App\Http\Controllers';