我在同一页面上有一个放置表单和一个删除表单。
{{Form::open( .. 'method'=>'delete' .. )}} ... {{Form::close()}}
{{Form::open( .. 'method'=>'put' .. )}} ... {{Form::close()}}
当 put-form 验证失败时,我会返回打印错误。
return Redirect::back()->withInput()->withErrors($validator);
在那一刻,如果您提交删除表单,它就会变成PUT方法提交!!
是因为session中保存了之前的Input信息吗??
混合发布/删除或放置/获取效果很好。
同一个页面上放置/删除组合有解决方案吗?
最佳答案
Laravel 为 PUT 和 DELETE 请求发送一个 _method
隐藏字段。两个请求都是 POST。
当您返回 View 时,您正在使用之前提交的_method
设置_method
。
在重定向回来之前,尝试更改 _method
的输入。
Since HTML forms only support POST and GET, PUT and DELETE methods will be spoofed by automatically adding a _method hidden field to your form. ~ Laravel Docs - Opening a form
关于forms - Laravel:在错误的方法放置表单验证响应后提交方法删除表单失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25417568/