【问题标题】:Adding Namespace To Route Service Provider NOT WORKING将命名空间添加到路由服务提供商不工作
【发布时间】:2023-01-24 14:20:11
【问题描述】:

我正在使用 Laravel 9,我想使用 Laravel 旧式路由。

所以在RouteServiceProvider.php 里面,我添加了这个:

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

然后对于 web 路线:

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

然后,在web.php里面:

Route::prefix('admin')->group(function () {
    Route::get('panel', [PanelController::class, 'index']);
});

所以我没有在这个文件中指定use App\Http\Controllers\Admin\PanelController;,因为命名空间已经定义了。

但不知道为什么当我转到“管理员/面板”网址时,我得到目标类 [PanelController] 不存在。错误意味着命名空间无法正常工作!

那么我怎样才能正确地声明命名空间,这样我就不需要将每个控制器都用于路由?

【问题讨论】:

    标签: php laravel laravel-routing laravel-9


    【解决方案1】:

    写下AdminPanelController并检查

    Route::prefix('admin')->group(function () {
        Route::get('panel', [AdminPanelController::class, 'index']);
    });
    

    【讨论】:

      猜你喜欢
      • 2012-05-01
      • 1970-01-01
      • 2017-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多