У меня есть следующие маршруты
Route::get('videos/{video}/edit', 'VideoController@edit');
Route::put('videos/{video}/update2', 'VideoController@update2');
первый маршрут загружает следующее раздетое представление
<form action='/videos/{{$video->uid}}/update2' method='post'>
<button class='btn btn-default' type='submit'>Update</button>
{{csrf_field()}}
{{method_field('PUT')}}
</form>
из кода контроллера, указанного ниже
class VideoController extends Controller{
public function edit(\App\Models\Video $video){
return view('video.edit',[
'video' => $video,
]);
}
public function update2(VideoUpdateRequest $request,\App\Models\Video $video){
echo "ok";
}
}
в соответствии с этимкод, ожидаемое поведение должно видеть "хорошо", вместо этого я получаю HTTP 302 Redirect, как показано ниже в консоли Dev.
![enter image description here](https://i.stack.imgur.com/l3pgx.png)
Это странное поведение, которое не ожидается.Как получить ожидаемое поведение отображения «ОК» после отправки формы?Как это отладить?
решено
Проблема в том, что элементы HTML в форме не имеют атрибутов 'name', поэтому Laravel Form Request Validation перенаправляет обратно.после добавления этих отсутствующих атрибутов форма работает как положено.