所以请考虑以下事项:
Route::middleware('web')
->namespace('App\Modules\Config\Controllers')
->group(function () {
Route::get('config', ['as' => 'config.index', 'uses' => 'Config@index']);
Route::put('config', ['as' => 'config.update', 'uses' => 'Config@update']);
Route::patch('config', 'Config@update');
});
当我点击这些路线时会爆炸,因为:
Class App\Http\Controllers\App\Modules\Config\Controllers\Config does not exist
在laravel 5.6中没有办法说:不,我不想使用App\Http\Controllers
我想使用我指定的命名空间?
答案 0 :(得分:0)
尝试使用斜杠
->namespace('\App\Modules\Config\Controllers')
答案 1 :(得分:0)
如果查看RouteServiceProvider
,您会发现存在属性
protected $namespace = 'App\Http\Controllers';
这是你的root namespase,你可以改变它,例如:
protected $namespace = 'App\Modules\Config\Controllers';
或者直接在路径文件中擦除并设置namespase以用于任何组。