我正在制作一个Laravel应用程序,并且有一个用户可以使用javascript添加输入字段的表单。因此,表单具有多个具有相同名称的输入。
e.g。 <input name='date[]' class='form-control' ...
在我的控制器的更新操作中,我可以遍历输入并更新我的数据库而不会出现任何问题。问题是当我尝试添加验证时。
我尝试使用通过Controller ValidatesRequest trait提供的validate方法。
$this->validate($request, ['date.*' => 'required']);
但是我收到了这个错误:
helpers.php第519行中的ErrorException “htmlspecialchars()期望参数1为字符串,数组为”
然后我在这篇文章中遵循了批准的答案:here
所以在我的控制器中我手动创建了一个类似的验证器:
$validator = Validator::make($request->all(), ['date.*' => 'required']);
当我dd($validator->messages());
时,我可以看到验证被点击并且消息正在生成,但是当我将这些错误消息发送到我的视图时,这样:
if($validator->fails()) {
return redirect()->back()
->withErrors($validator)
->withInput();
}
我得到了和以前一样的错误:
helpers.php第519行中的ErrorException htmlspecialchars()期望参数1为字符串,给定数组
我已经阅读了有关验证数组的Laravel文档(一个简短的部分),并尝试使用Google搜索我的问题而不成功。任何帮助将不胜感激。