我使用laravel 5.2和具有关于路由问题。假设我有这样的路线:http://example.com/out/parameter1/parameter2/
Laravel选择路线参数不工作
参数1应要求而参数2应该是可选的。当用户输入这个网址:http://example.com/out/parameter1/
或本http://example.com/out/parameter1/parameter2/
,他们应该能够继续进行。当输入时,http://example.com/out/
他们将被重定向到主页。
这里是我的路线:
Route::get('out/{param1}/{param2?}', '[email protected]']);
Route::get('out/', '[email protected]']);
控制器:
public function out($param1, $param2 = '', Request $request) {
// logic here
}
是我得到的错误是这样的: Argument 3 passed to App\Http\Controllers\MyController::out() must be an instance of Illuminate\Http\Request, none given
我已经指定param2
上的默认值方法。
检查与您的路由器。改变路线::获得( '出/ {参数1}/{参数}?', '@ myController的出']);到路线::得到( '输出/ {参数1}/{参数2}', '@ myController的出']); –
@MansoorH,它不工作,因为我得到一个404错误。另外,'param2'应该是可选的。 – basagabi
什么可以第三个参数的可能值可以请你定义 –