// here I add some custom name to this route which will help to generate
// a corresponding URL in the view by passing this name
// route('routename')
Route::get('/books/{book}/addreview', 'ReviewController@create')->name('review.create');
Route::post('/books/{book}/review', 'ReviewController@store')->name('review.store');
В вашем контроллере, который отображает представление review.create
, вы должны передать $book
, который соответствует привязке текущей модели на вашем маршруте, как это
public function create(Book $book){
return View::make('reviews.create', ['book' => $book]);
}
и в соответствующем представлении, когда высоздать свою форму, вы должны указать атрибут action
, как это
<form action={{ route('review.store', $book)}} method="post">
{{ csrf_field}}