我相信使用时的一个复杂问题Route::get('{slug1}/{slug2}', 'PagesController@index');
是处理所有可能的segment1/segment2/
输入foo/bar/
。你可能会得到很多不必要的逻辑。
这可能不是最好的解决方案,但我相信小组可以很好地完成您想要完成的工作。
Route::group(array('prefix' => 'segment1'), function() {
Route::get('/', 'ControllerOne@index');
Route::group(array('prefix' => 'segment2'), function() {
Route::get('/', 'ControllerTwo@index);
Route::get('/segment3', 'ControllerThree@index');
});
});
仅处理三个示例时可能会有些混乱,但最终可能会有所帮助并提供更好的层次结构以供使用。
before
这对使用和after
过滤器也有好处。就像所有segment2
端点一样,如果你想执行一些过滤器,而不是将过滤器添加到所有单独的端点,你可以将它添加到组中!
Route::group(array('before' => 'someFilter', 'prefix' => 'segment2'), function() {
// ... ...
});