在 laravel 中找不到带有个性化路由文件的控制器

Controller not found with personalized route file in laravel

我已经使用 AppServiceProvider 创建了自己的路由文件,

public function boot(){
    $this->loadRoutesFrom('routes/test/routes.php');
}

路由正常,但找不到控制器

Route::get('/test', 'TestController@test');

反射异常 (-1) Class测试控制器不存在

也许我错过了什么?提前致谢。

您需要在您的 RouteServiceProvider.php 中映射路由,查看网络路由示例。

protected function mapWebRoutes()
        {
            Route::group([
                'middleware' => 'web',
                'namespace' => $this->namespace,
            ], function ($router) {
                require base_path('routes/web.php');
            });
        }

首先感谢vikalp。

太简单了,我不必接触 AppServiceProvider,答案显然在 RouteServiceProvider.php 中,我只需将自定义路由文件添加到 mapWebRoutes();

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

    /* My route-file */
    Route::middleware('web')
        ->namespace($this->namespace)
        ->group(base_path('routes/test/test_routes.php'));
}