如何在 Laravel 9 资源控制器中更改路由 URL
How to change route URL in Laravel 9 resource controller
我想知道是否有办法更改 Laravel 的资源控制器的默认 URL。例如,对于基本的 CRUD 操作,对于创建,我们有一个 /create
默认创建的路由 Laravel。可以改成/ask
或/new
之类的吗?
您可以“本地化”创建的资源 URI,无需太多工作(已添加到服务提供商的 boot
方法):
Route::resourceVerbs([
'create' => 'new',
]);
这将使对 Route::resource(...)
的所有调用都使用 'new' 而不是 'create' 为 create
操作创建 URI。
如果您需要比类似的东西更复杂,您可以扩展 Illuminate\Routing\ResourceRegistrar
以任何您喜欢的方式覆盖它。您可以调用您的版本的一个实例或将其绑定到 Illuminate\Routing\ResourceRegistrar
的容器,它将用于所有 resource
调用。
Laravel 9.x - Docs - Controllers - Resource Controllers - Localizing Resource URIs
我想知道是否有办法更改 Laravel 的资源控制器的默认 URL。例如,对于基本的 CRUD 操作,对于创建,我们有一个 /create
默认创建的路由 Laravel。可以改成/ask
或/new
之类的吗?
您可以“本地化”创建的资源 URI,无需太多工作(已添加到服务提供商的 boot
方法):
Route::resourceVerbs([
'create' => 'new',
]);
这将使对 Route::resource(...)
的所有调用都使用 'new' 而不是 'create' 为 create
操作创建 URI。
如果您需要比类似的东西更复杂,您可以扩展 Illuminate\Routing\ResourceRegistrar
以任何您喜欢的方式覆盖它。您可以调用您的版本的一个实例或将其绑定到 Illuminate\Routing\ResourceRegistrar
的容器,它将用于所有 resource
调用。
Laravel 9.x - Docs - Controllers - Resource Controllers - Localizing Resource URIs