Laravel: как сделать строку необязательной в маршруте?
В web.php
Я имею:
Route::get('car/id/{id}/color/{color?}', 'carController@getCar);
Но я хочу всю часть /color/{color?}
быть необязательным, а не только параметр цвета /{color?}
Подскажите, пожалуйста, как это сделать?
2 ответа
Попробуй это
Route::get('search/{query?}', 'YourController@method')->where('query','.+')
Лучше использовать параметр строки запроса здесь (теперь вся часть должна быть необязательной по умолчанию)...
Route::get('car', 'carController@getCar);
пример:
car?id=1&color=red
car?id=2
car
в контроллере getCar
Метод
getCart() {
$id = request()->get('id');
$color = request()->get('color');
}