我有以下路线
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重定向。
这是一个奇怪的行为,这是不期望的。提交表单后如何获得显示“确定”的预期行为?如何调试呢?
问题在于表单中的HTML元素不具有'name'属性,因此Laravel表单请求验证被重定向回。添加这些缺少的属性后,表单将按预期工作。
答案 0 :(得分:0)
已解决
问题在于表单中的HTML元素不具有'name'属性,因此Laravel表单请求验证被重定向回。添加这些缺少的属性后,表单将按预期工作。