Маршруты Laravel 5 (пара необязательных параметров) - PullRequest
0 голосов
/ 09 октября 2018

Мне нужно сделать функциональность, когда действие имеет два необязательных параметра .

Таким образом, действие можно назвать так:

site/man/process/age/30/weight/80, 

site/man/process/age/30,

site/man/process/weight/80,

site/man/process/

Я пытаюсьиспользовать маршрут следующим образом:

Route::get('man/process/age/{age?}/weight/{weight?}', 'ManController@process');

Но безуспешно.Кто-нибудь знает, как это сделать правильно?

Спасибо за любую помощь и совет.

Ответы [ 3 ]

0 голосов
/ 09 октября 2018
Route::get('man/process', 'ManController@process');
URL : /man/process?age=10&weight=20
0 голосов
/ 09 октября 2018

Вы можете использовать GET запрос и передавать параметры в виде строки запроса.

Route::get('man/process', 'ManController@process');
URL : /man/process?age=10&weight=20

Или использовать POST Запросить и передать материал, который вы хотите получить:

public function getData(Request $request)
{
  // Data in this case would contain age and weight
  $data = $request->all();
}
0 голосов
/ 09 октября 2018

Я бы использовал совершенно другой подход к передаче этих переменных через параметры маршрута.

Рассмотрите возможность отправки запроса POST с возрастом и весом в теле запроса, а затем получите доступ к этим значениям в вашем контроллере с помощью $ request-> all ();

edit с примером:

Route::post('man/process', 'ManController@process');

Затем в вашем контроллере метод process ():

process(Request $request)
{
  // Data in this case would contain age and weight
  $data = $request->all();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...