Laravel 8中的路由组命名空间
我试图在laravel中定义名称空间 老佛尔Laravel 8中的路由组命名空间,laravel,frameworks,backend,laravel-routing,laravel-8,Laravel,Frameworks,Backend,Laravel Routing,Laravel 8,我试图在laravel中定义名称空间 老佛尔 Route::group('namespace' => 'RoleA'], function() { Route::get('/', 'HomeController@index']); // call RoleA/HomeController }); 拉维尔8 use App\Http\Controllers\RoleA\HomeController; use App\Http\Controllers\RoleB\HomeCo
Route::group('namespace' => 'RoleA'], function() {
Route::get('/', 'HomeController@index']);
// call RoleA/HomeController
});
拉维尔8
use App\Http\Controllers\RoleA\HomeController;
use App\Http\Controllers\RoleB\HomeController;
// return error => HomeController already in use
Route::group('namespace' => 'RoleA'], function() {
Route::get('/', [HomeController::class, 'index']);
// call RoleA/HomeController
});
Route::group('namespace' => 'RoleB'], function() {
Route::get('/', [HomeController::class, 'index']);
// still call RoleA/HomeController
});
在Laravel8中是否有其他方法或正确的方法使用名称空间
编辑,很抱歉这个模棱两可的问题
我的意思是像旧版本一样,在定义名称空间时
类似于此,或者参见上面的旧版本
Route::group('namespace' => 'RoleB'], function() {
Route::get('/', [RoleB/HomeController::class, 'index']);
// will call RoleB/HomeController
});
有没有一种方法可以实现类似于上面代码的功能?对于返回错误,请按如下方式导入控制器(您不能导入相同的命名类。因此,您应该使用别名) 然后,您可以按以下方式创建管线组: 您可以按如下方式使用名称空间
Route::group(['namespace' => 'HomeControllerA'], function()
{
Route::get('/RoleA', [HomeController::class, 'index']);
}
名称空间如何,在Laravel8中有没有使用名称空间的方法,或者现在不需要它?请参阅我的编辑,谢谢
Route::prefix('RoleA')->group(function () {
Route::get('/', function () {
// Matches The "/RoleA" URL
});
});
Route::group(['namespace' => 'HomeControllerA'], function()
{
Route::get('/RoleA', [HomeController::class, 'index']);
}