群组的路线名称不适用

时间:2019-10-20 20:37:59

标签: laravel laravel-6

因此我遇到了一个问题,我想让我的路线看起来整洁,找到了一个例子,但名称为“ admin”。不在路由列表中的路由名称前面注册。

Route::group([
    'namespace' => 'Admin',
    'middleware' => 'admin',
    'prefix' => 'admin',
    'name' => 'admin.'
    ], function () {
        Route::resource('articles', 'ArticleController');
});

如果我使它与众不同,那么一切都很好。

Route::group([
    'namespace' => 'Admin',
    'middleware' => 'admin',
    'prefix' => 'admin',
    ], function () {
        Route::name('admin.')->group(function () {
            Route::resource('articles', 'ArticleController');
        });
});

有人可以解释为什么会这样吗?

1 个答案:

答案 0 :(得分:3)

在这种情况下,您可能正在寻找密钥'as'而不是'name'

Route::group([
    'namespace' => 'Admin',
    'middleware' => 'admin',
    'prefix' => 'admin',
    'as' => 'admin.'
    ], function () {
        Route::resource('articles', 'ArticleController');
});

在通过方法调用name设置那些属性时,可以使用as的别名。例如:

Route::name('admin.')->group(...);

即使对于Route对象,name只是设置了一个名为as的属性:

Route::get(..., ...)->name('blah'); // is actually setting `as`