Laravel 为前缀操作创建 link

Laravel create link for prefix action

我有一个名为 admin 的前缀。我在管理文件夹中的所有控制器。

在路由中,我创建了如下带有命名空间

的路由
Route::group(['namespace' => 'Admin', 'prefix' => 'admin'], function()
{
    Route::resource('/tags', 'TagsController');

});

现在我正尝试在我的管理面板边栏中创建 link

<a href="{{ url('admin/tags') }}" title="bookmark">Tags</a>

在 table 中,我使用了如下示例的操作

<a href="{{action('Admin\TagsController@show',['tag'=>$tag->id])}}" >View</a>

我的问题是如何在不编写 admin 的情况下创建两个 link ?我有超过 100 个唯一 link ,我想避免每次都在 link 中写这个管理 prefix

您可以使用 route() 辅助函数来生成 url。

/**
 * Generate the URL to a named route.
 *
 * @param  array|string  $name
 * @param  mixed  $parameters
 * @param  bool  $absolute
 * @return string
 */
function route($name, $parameters = [], $absolute = true)
{
    return app('url')->route($name, $parameters, $absolute);
}

您可以像 here 中所示那样命名您的 prefix/resource 路由,然后在路由函数中使用它。

Route::namespace('Admin')->prefix('admin')->name('admin.')->group(function () {
     Route::resource('/tags', 'TagsController');
});

请执行php artisan route:list命令以查看您是否正确命名了路由。