验证失败后返回Laravel 5 MethodNotAllowedHttpException(返回POST)

时间:2016-10-12 07:55:26

标签: laravel validation methods laravel-5 laravel-5.3

我会尽量明确表达......我在Laravel中很新......

过程:

1)我有一个客户应该进入促销的形式的视图;我有一个PromoRequest来验证这个促销代码;

2)我有一个表格视图,如果促销代码通过规则,客户应填写他的数据;我有一个CustRequest来验证他的日期(例如'email'=>'required'等)

3)最后我有一个确认视图,用验证按钮显示客户数据;如果找到,我将数据存储在数据库中,并发送电子邮件

问题:

1)第一步正常

2)在第二个视图中,如果我的验证规则失败(例如没有电子邮件),我得到 MethodNotAllowedHttpException 我明白如果题字验证失败(没有电子邮件),它会回到我的题词形式,这是一种POST方法......这就带来了问题......

我怎样才能解决这个问题?

由于

1 个答案:

答案 0 :(得分:-1)

这可能为时已晚,但我遇到了这个问题,因为我遇到了同样的问题,并认为我会描述我错误地做了什么...

对我来说,我正在建立一个用户提交照片的网站。当用户点击"添加照片"它把他们带到了一个页面,他们必须检查一个框以接受法律免责声明。带有复选框的此表单是POST请求。在他们接受之后,他们会被重新定向到提交页面......这也是一个有帖子请求的表格。这是我的问题:背靠背POST请求页面。如果用户在提交表单上输入了无效数据,或者没有在一个字段中输入数据,则Laravel会尝试基本上按下"后退按钮"在浏览器中,保持表单填写用户输入的数据。问题是"返回"按钮(或用户访问此页面的方式)来自POST请求,因此无法执行此操作。它给了我上面描述的错误。一旦我将合法接受页面切换到GET请求表单并更新了路由以匹配一切正常工作。这对我来说是一个愚蠢的错误,我只是希望能够减轻其他人的挫败感,因为他们正在学习在Laravel中发展。