【发布时间】:2017-11-02 20:41:41
【问题描述】:
我的 web.php 中有 2 条路线
1) Route::get('/{url}', 'MenuController@menu');
提供网址:
- /菜单
2) Route::get('/{name}', 'HomeSlideviewController@index')->name('promotiondetail');
提供网址:
- /menu(不同的页面,但在路线 1 中的名称相同)
- /食物
如果路由 = 同名,我想使用 2 路由 如果路由 1 没有 url,我想使用路由 1 它将使用路由 2。在 web.php 中,他们无论如何都要做类似
的事情if(Route::get('/{url}', 'MenuController@menu')) is null use
`Route::get('/{name}', 'HomeSlideviewController@index')->name('promotiondetail');`
现在在我的 web.php 中我这样做了
Route::get('/{url}', 'MenuController@menu');
Route::get('/{name}', 'HomeSlideviewController@index')->name('promotiondetail');
当我去 /food 它会去页面找不到。
更新
在我的控制器中我试试这个
try {
// if find url
}
} catch (\Exception $e) {
//if not find url
return redirect()->route('promotiondetail', $url);
}
它返回错误重定向你太多次
更新 3
$url = 食物
【问题讨论】: