资源路由的 /photos/create 和 /photos/{photo} 不是会冲突吗?我代码这就冲突了

资源路由的 /photos/create/photos/{photo} 冲突?

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 6
ruke

和顺序有关吧, 你给后面这个加上正则规则呗

5年前 评论
ibucoin

和顺序有关,create在前,匹配到之后就不会继续了,你也可以给photo制定正则

看文档的路由-正则表达式约束:

Route::get('user/{id}/{name}', function ($id, $name) {
    //
})->where(['id' => '[0-9]+', 'name' => '[a-z]+']);
5年前 评论

@ibucoin 资源路由是这么写的,只要一条就能定义多条,如果按get、post什么的再分开写,那就没有资源路由的意义了

Route::resource('photos', 'PhotoController');
5年前 评论

@WilliamQian 回我的,不知道这里为什么没有显示出来。我觉得这样子应该可以

Route::Resource('photos/create', 'PhotoController@create');
Route::Resource('photos', 'PhotoController');
5年前 评论

格式要求严格的放到前边

5年前 评论

/photos/create 和 /photos/{photo} 我记得我在5.4的时候出现这种问题,好像把 【参数】 路由 提到前面吧 ,就好了,你试下

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!