You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Laravel所有资源路由名称统一添加admin.前缀

Laravel 后台资源路由统一添加名称前缀实现方案

当前现状

当前项目中定义的后台资源路由如下:

Route::resource('/admin/users', \App\Http\Controllers\AdminUsersController::class);
Route::resource('/admin/posts', \App\Http\Controllers\AdminPostsController::class);
Route::resource('/admin/categories', \App\Http\Controllers\AdminCategoriesController::class);
Route::resource('/admin/media', \App\Http\Controllers\AdminMediasController::class);
Route::resource('/admin/comment/replies', \App\Http\Controllers\CommentRepliesController::class);
Route::resource('/admin/comments', \App\Http\Controllers\PostCommentsController::class) ;

查看路由列表后,当前生成的路由名称均无admin.前缀,例如分类路由名称为categories.index、用户路由名称为users.index。

需求

  • 为所有后台资源路由的名称统一添加admin.前缀,例如将users.index调整为admin.users.index、users.store调整为admin.users.store,所有资源路由按该规则统一生效
  • 不接受逐一对单个resource路由传入names数组单独配置路由名的实现方式,例如下方写法不采用:
Route::resource('/admin/users', \App\Http\Controllers\AdminUsersController::class, ['names'=>['index'=>'admin.users.index']]);

实现方法

直接使用路由组统一配置路径前缀和路由名称前缀,把所有后台资源路由放到组内即可,无需单独修改每个资源路由的配置:

Route::prefix('admin') // 统一设置路径前缀,替代每个路由里重复写的/admin
    ->name('admin.') // 统一设置路由名称前缀,注意末尾的点不能漏写
    ->group(function () {
        Route::resource('/users', \App\Http\Controllers\AdminUsersController::class);
        Route::resource('/posts', \App\Http\Controllers\AdminPostsController::class);
        Route::resource('/categories', \App\Http\Controllers\AdminCategoriesController::class);
        Route::resource('/media', \App\Http\Controllers\AdminMediasController::class);
        Route::resource('/comment/replies', \App\Http\Controllers\CommentRepliesController::class);
        Route::resource('/comments', \App\Http\Controllers\PostCommentsController::class);
    });

效果说明

  • 路由访问路径和原有逻辑完全一致,不会改变原有接口地址
  • 组内所有资源路由会自动在默认生成的路由名前拼接admin.前缀,直接得到预期的admin.users.index、admin.categories.index这类命名
  • 后续新增后台路由时,只要放到该路由组内,会自动继承路径和名称前缀,无需重复配置

内容的提问来源于stack exchange,提问作者r0pe-12

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 17:21:10