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