说我有一些路线:
Route::get('items', 'ItemController@index')->name('item.index');
Route::get('items/{hash}/{slug}', 'ItemController@show')->name('item.show');
在使用路由模型绑定时,我要处理以下情况:
/items/<correct_hash>/<incorrect_slug>
永久重定向以更正散列和子段/items/<correct_hash>
永久重定向以更正哈希值和子代码/items/
我目前了解路由模型绑定的快捷好处,它减少了控制器代码,但通常用于简单的/items/{id}
情况。对于我的情况,是否可以扩展documentation中显示的内容?还是应该放弃整个模型绑定方法,然后再返回穴居人控制器逻辑?
当前看来,文档一次只能绑定一个参数,而不能组合:
Route::bind('user', function ($value) {
return App\User::where('name', $value)->first() ?? abort(404);
});