我正在使用 LaravelValidator
类对数组进行一些基本验证。
我的数组:
$employee['name']='name';
$employee['address']='address';
$employee['department']['department_name']='deptname';
$employee['department']['department_address']='deptaddress';
我的验证规则如下:
$rules = array(
'name'=> 'required',
'address' => 'required',
'department.department_name' => 'sometimes|required'
)
自定义消息如下:
$messages = array(
'name.required' => 'Employee Name is required',
'address.required' => 'Address is required'
'department.department_name.required' => 'Department name is required'
)
我会用Validator::make($employee, $rules, $messages);
按照我的规则,department_name
当且仅当它存在于数组中时才应进行验证。但目前Validator
未验证department_name
当它存在且空白时。有什么想法我可能做错了什么吗?
你在这里有点错了,请参阅docs https://laravel.com/docs/5.5/validation#validating-arrays here
那里提到了如果我有$photos['profile']
那么我的验证将会像这样
$validator = Validator::make($request->all(), [
'photos.profile' => 'required|image',
]);
从上面的例子来看,在你的情况下应该是这样的
$rules = array(
'name'=> 'required',
'address' => 'required',
'employee.department.department_name' => 'sometimes|required'
)
既然你有这样的数组$employee['department']['department_name']
也是如此$message
会这样
$messages = array(
'name.required' => 'Employee Name is required',
'address.required' => 'Address is required'
'employee.department.department_name.required' => 'Department name is required'
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)