1
我有一个使用cloneya jQuery plugin克隆表单元素的表单。将被克隆的元素看起来像这样:Laravel 5使用表单请求验证克隆字段
<div class="form-group">
<label for="name">Item name</label>
<input class="form-control" name="name[]" type="text">
</div>
<div class="form-group">
<label for="count">Item count</label>
<input class="form-control" name="count[]" type="text">
</div>
正如你可以看到,每一个输入将是一个数组,而不是字符串。我想验证那些使用Laravel Form Request。这是我的规则:
public function rules()
{
return [
'name' => 'required|between:3,50',
'count' => 'required|integer|min:1',
];
}
但这不起作用。当我提交表单时,我收到以下错误消息:
htmlentities() expects parameter 1 to be string, array given
我一直在寻找解决方案,但找不到合适的解决方案。任何建议,将不胜感激!
是的,我已经试过这种方式,但它仍然无法正常工作。我认为原因是在字段名称中使用键/索引,如''。但我的问题是,我们不知道有多少名称和用户会提交。 – rendyhihi
自从您使用'foreach'循环以来,您并不需要知道有多少'name'和'count'。 '应该对应规则数组中的$ rules ['count.0']'。你有没有试图故意造成验证错误,并在视图中转储'$ errors'变量?你可以发布倾销的'$错误'? –
你说得对,我们在这里使用'foreach',这样我们就不必担心提交了多少字段。但它仍然显示与以前相同的错误:'htmlentities()期望参数1是字符串,数组给定'。我不能转储'$ errors'变量,因为请求还没有被规则验证。 – rendyhihi