Laravel 如何用验证类验证 serializeArray () 后的数据呢
//比如前端是这样请求的
data = $("form").serializeArray();
axios.put('{{route('users.update',[$user])}}', {data })
//后台接收的数据一般是这种格式的
data[
0:{name:name,value:xxx}
1:{name:email,value:xxx}
]
我在UserRequest验证类里面重写了validatinData方法
public function validationData()
{
$data = [];
foreach($this->all() as $v){
foreach($v as $v1){
$data[$v1['name']]=$v1['value'];
}
}
return $data;
}
这样是可以正常验证数据了,但是还有个问题,在控制器中update的时候还需要重新走一遍validationData
方法里面的循环来获取数据再更新,不然直接使用UserRequest $request
的话数据格式还是原始接收的数据,求问各位大佬,除了在ajax中手动赋值参数外还有没有其他比较好的方法来处理这个问题
推荐文章: