Validation Laravel 5多字段验证
我在视野中有一块区域Validation Laravel 5多字段验证,validation,laravel,eloquent,laravel-5,Validation,Laravel,Eloquent,Laravel 5,我在视野中有一块区域 为此表单创建文件夹内请求验证程序,如 <?php use Illuminate\Foundation\Http\FormRequest; class MultipleRequest extends FormRequest { /** * Determine if the user is authorized to make this request. * * @return bool */ public f
为此表单创建文件夹内请求验证程序,如
<?php
use Illuminate\Foundation\Http\FormRequest;
class MultipleRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
$rules = [
'description' => 'required|array',
];
if ($this->request->get('description')) {
foreach($this->request->get('description') as $key => $val)
{
$rules['description.'.$key] = 'required|min:7'; //example
}
}
return $rules;
}
public function messages()
{
$messages = [];
if ($this->request->get('description')) {
foreach ($this->request->get('description') as $key => $val) {
$messages['description.' . $key . '.min'] = 'Wrong field.';
$messages['description.' . $key . '.required'] = 'This field required.';
}
}
return $messages;
}
}
有关详细信息,请阅读您应该能够在估价期间使用点符号访问嵌套数组项,因此请为
new.description
和new.amount
@if (Session::has('_old_input'))
@for ($i=0; $i<count(Session::get('_old_input.description')); $i++)
<div>
@if($errors->any() && Session::get('errors')->getBag('default')->has('description.' . $i))
<p class="">{{Session::get('errors')->getBag('default')->first('description.' . $i)}}</p>
@endif
<input type="text" name="new[][description]" id="description-new-{{$i}}" value="{{Session::get('_old_input.description.' . $i)}}">
<input type="text" name="new[][amount]" id="amount-new-{{$i}}" value="{{Session::get('_old_input.amount.' . $i)}}">
</div>
@endfor
@endif
public function rules()
{
return [
'names.*' => 'required|max:50',
'emails.*' => 'required|max:100',
];
}