Значение функции маршрута

У меня возникли трудности с пониманием того, что делает этот код. кто-нибудь может мне это объяснить? Я видел, как некоторые люди использовали его, чтобы перенаправить пользователя на другую страницу с ним, но я не понимаю эту часть здесь "['id'=>$data3->id]) ".

Вот полный код: (со страницы просмотра)

<a href="{!! route('user.upload.image', ['id'=>$data3->id])  !!}">

Контроллер (как данные3 передаются для просмотра):

public function getInfo($id) {
$data3=UserImage::where('user_id',$id)->get();
return view('view',compact('data3'));

Маршрут:

Route::get('/userUpload/{user}/create1','CreateController@create1')->name('user.upload.iamge');
Route::get('user/show/{id}','HomeController@getInfo')->name("user.show");

контроллер create1:

    public function create1(personal_info $user){
return view('create1')->withUser($user);
}

0

Решение

На основании вашего routes

Route::get('/userUpload/{user}/create1','CreateController@create1')->name('user.upload.iamge');
Route::get('user/show/{id}','HomeController@getInfo')->name("user.show");

Первый route имеет parameter user который должен быть передан ему в любое время route называется.

Второй также имеет id параметр, который также должен быть передан ему.

Проходя parameter значения для маршрутов могут быть сделаны разными способами. Например.

Используя route name:

<a href="{!! route('user.upload.image', ['user'=>$data3->id]) !!}">

Этот метод требует от вас пройти все parameters в виде массива с именем параметра в качестве key массива.

Вы также можете назвать маршрут как:

<a href="/userUpload/{$data3->id}/create1">

Что не требует ничего, так как параметр был жестко задан в URL.

В любое время вы принимаете parameters в вашем маршруте, чтобы передать их вашему контроллеру или route function, должны быть указаны в том порядке, в котором они расположены.

Так что ваши getInfo проходит id параметр он получил от маршрута к контроллеру

public function getInfo($id) {
$data3=UserImage::where('user_id',$id)->get();
return view('view',compact('data3'));
}
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector