繁体   English   中英

laravel 目标 class [TestController] 不存在

[英]laravel Target class [TestController] does not exist

我在 win11 上使用 Laravel Framework 9.31.0

我在文件 routes\web.php 中使用了操作语法:

Route::get('role', [TestController::class, 'index']);

或 controller 的完整路径:

=> 'app\Http\Controllers\TestController@index'

或者像这样:

use app\Http\Controllers\TestController;

此外,我在文件 app\Providers\RouteServiceProvider.php 中声明了变量 $namespace 并告诉 laravel 将其用于我们的 web 和 api 路由:

class RouteServiceProvider extends ServiceProvider
{
    public const HOME = '/home';
    protected $namespace = 'app\\Http\\Controllers';

    public function boot()
    {
        $this->configureRateLimiting();

        $this->routes(function () {
            Route::middleware('api')
                ->prefix('api')
                ->namespace($this->namespace)
                ->group(base_path('routes/api.php'));

            Route::middleware('web')
                ->namespace($this->namespace)
                ->group(base_path('routes/web.php'));
        });
    }

没有任何帮助。 我究竟做错了什么?

尝试这个

use App\Http\Controllers\TestController;

尊重人物

我希望它有用

使用正确的命名空间导出 TestController 路径。

根据您发布的代码,您必须这样做:

Route::get('role', 'TestController@index');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM