私は入力フォームを持っています。ここで、ユーザーは予約注文のアイテム詳細の数量を選択します。例:ジュリアの予約注文:飲み物 - 水1瓶、ミルク1杯、防弾コーヒー1杯。ララベル5.1。インデックス付き配列の検証
@foreach ($item->detail()->orderBy('sequence')->get() as $detail)
<td><input name="estimate_quantity[]"></td>
@endforeach
私は自分の数量を検証したいと思います。ゼロより大きいかそれ以上の整数だけです。 だから私はルールを作った
public function rules()
{
$rules = [
'estimate_quantity' => 'required|array',
];
$estimate_quantity = $this->request->get('estimate_quantity');
foreach ($estimate_quantity as $index => $value){
$rules["estimate_quantity.$index"] = 'integer|min:0';
}
return $rules;
}
それは動作しません。アルファベットを入力した場合、エラーになります。
ErrorException in helpers.php line 468:
htmlentities() expects parameter 1 to be string, array given
1.この検証を行う正しい方法はありますか?コントローラーで作ってもいいとは思わない。
2.カスタムルールを別のファイルに作成すると、保存する方がよいでしょうか?アプリ/検証フォルダを作成しますか?
3.ルール実行後とコントローラメソッドの実行前に、どのような魔法が起こっていますか?
私はLaravelとプログラミングでもかなり新しいです。この簡単な質問には申し訳ありません。
を動作するはず与えることができると思いますか? https://laravel.com/docs/5.3/validation#validation-quickstart –
@Chonchol Mahmud私はそれを使用します。私は、コントローラ、https://laravel.com/docs/5.1/validation#form-request-validationとは別の検証ロジックを持っています。 – Nikita