Я ищу лучший способ подойти к этому.
У меня есть форма для простого поиска, но есть несколько необязательных значений. Затем контроллер перенаправляет сообщение на URL, который легче читать.
, например
startdate=2018-01-01
enddate=2018-01-31
department=2,4
это создаст URL
/2018-01-01/2018-01-31/2,4/
Но если они также проводят поиск по сотруднику, он возвращает следующее
employee=9,5,1
/2018-01-01/2018-01-31/2,4/9,5,1/
Они также не могли искать отдел и просто искать сотрудников
/2018-01-01/2018-01-31/???/9,5,1/
Итак, имея ввиду, что полный план маршрутизации URL показан ниже, как бы вы использовали вложенные необязательные атрибуты? Кроме того, как вы потом получите эти значения в маршруте?
Route::get('/{locale}/WIPReport/show/{startdate}/{enddate}/{regions?}/{offices?}/{departments?}/{clients?}/{employees?}', 'WIPReportController@reportdata')
->where(['regions' => '[0-9,]+', 'offices' => '[0-9,]+', 'departments' => '[0-9,]+', 'clients' => '[0-9,]+', 'employees' => '[0-9,]+'])