我使用laravel 5.2并且在路由方面存在问题。假设我有这条路线:http://example.com/out/parameter1/parameter2/
http://example.com/out/parameter1/
或此http://example.com/out/parameter1/parameter2/
时,他们应该能够继续。输入时,http://example.com/out/
将重定向到主页。
这是我的路线:
Route::get('out/{param1}/{param2?}', 'MyController@out']);
Route::get('out/', 'MyController@redirect']);
控制器:
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
的默认值。
答案 0 :(得分:1)
请求实例必须是第一个
public function out(Request $request, $param1, $param2 = '')
{
// logic here
}
文档:方法注入
下的https://laravel.com/docs/5.2/controllers