微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

路由类型资源 Laravel 8 中方法的默认参数

如何解决路由类型资源 Laravel 8 中方法的默认参数

我正在尝试根据文档向资源路由添加认参数:

Laravel doc

我的代码如下:

Route::resource('flats',FlatsController::class)->parameters([
    'index' => 'test_parameter','create' => 'test_parameter1','update' => 'test_parameter2'
]);

但不幸的是,在列出路由时,它总是像下面的屏幕截图一样:

routing list

请帮助指导我在哪一点上犯了错误

解决方法

您拥有以下内容:

| Methods   | route                               |
|-----------|-------------------------------------|
| POST      | panel/investments/flats             |
| GET/HEAD  | panel/investments/flats             |
| GET/HEAD  | panel/investments/flats/create      |
| GET/HEAD  | panel/investments/flats/{flat}      |
| PUT/PATCH | panel/investments/flats/{flat}      |
| DELETE    | panel/investments/flats/{flat}      |
| GET/HEAD  | panel/investments/flats/{flat}/edit |

由于唯一的参数是 {flat},因此您只能将其重命名为 per docs

Route::resource('flats',FlatsController::class)->parameters([
    'flat' => 'apartment'
]);

结果:

| Methods   | route                                    |
|-----------|------------------------------------------|
| POST      | panel/investments/flats                  |
| GET/HEAD  | panel/investments/flats                  |
| GET/HEAD  | panel/investments/flats/create           |
| GET/HEAD  | panel/investments/flats/{apartment}      |
| PUT/PATCH | panel/investments/flats/{apartment}      |
| DELETE    | panel/investments/flats/{apartment}      |
| GET/HEAD  | panel/investments/flats/{apartment}/edit |

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。