Отсутствуют обязательные параметры для [Маршрут: reviews.show] (от контроллера) - PullRequest
1 голос
/ 05 мая 2020

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

вот моя конкретная часть контроллера -

 $use = User::find($user->id);
        $pos = posts::find($post->id);
        //dd($user1, $post1);
        return redirect()->route('reviews.show', $pos, $use);

в сети. php часть -

Route::get('p/{posts}/review/{user}','ReviewController@show')->name('reviews.show'); 

в методе показа -

 public function show($posts, $user)
    {
        return view('posts.reviews.reviewshow', ['posts' => $posts], ['user' => $user]);
    }

Ответы [ 3 ]

2 голосов
/ 05 мая 2020

Вы должны использовать вот так

return redirect()->route('reviews.show', ['posts' => $pos, 'user' => $use]);
2 голосов
/ 05 мая 2020

route() вызовы обычно принимают параметры URL как ассоциативный массив. Вы используете для этого вспомогательную функцию, но она все еще применима.

redirect()->route('reviews.show', ['posts' => $pos, 'user' => $use]);
1 голос
/ 05 мая 2020

Когда вы передаете 2 параметра в маршрут, вы отправляете их как массив

return redirect()->route('reviews.show', [ $pos, $use ]);

Это ваша проблема

...