路由中的Laravel 5.5可选参数不起作用

时间:2017-12-02 20:00:13

标签: routing lumen

路线:

$router->get('vehicle/{year}/{make}/{model}/{rating?}','VehicleController@vehicle');

控制器操作

public function vehicle($year, $make, $model, $rating = false)
{
    // Implementation
}

网址 http://localhost:8080/vehicle/2010/Wapal/S2

错误

(1/1) NotFoundHttpException

事情非常明显,这肯定是laravel核心的一个错误?为什么会出现此错误?

2 个答案:

答案 0 :(得分:1)

最终设法使其与多个可选参数一起使用,希望对您有所帮助。 适用于Lumen 5.6。

示例:

$app->get(
    'vehicle[/{optional_year}[/{optional_make}[/{optional_model[/{optional_rating}]]]]',
    ['middleware' => 'auth' , 'uses' => 'VehicleController@vehicle']
);

如果您不使用任何中间件,则类似的东西应该起作用:

$app->get(
    'vehicle[/{optional_year}[/{optional_make}[/{optional_model[/{optional_rating}]]]]',
    'VehicleController@vehicle'
);

答案 1 :(得分:0)

尝试,应该工作

$router->get('vehicle/{year}/{make}/{model}[/{rating}]','VehicleController@vehicle');