如何在Symfony 4中组合验证错误对象?

时间:2019-05-08 05:24:07

标签: validation symfony4

我的api收到了从我的React应用发布的json对象。该对象具有两个属性,一个属性持有一个对象数组,另一个属性持有一个ID号。由于第一个数组无法通过Symfony的表单验证进行验证,因此我为其创建了一个自定义约束。

$data = json_decode($request->getContent(), true);

$custom_constraint = new Assert\blah blah;
$errors = $validator->validate($data['datas'], $custom_constraint );

if (count($errors) > 0 ) {
    $errorsString = (string) $errors;
    return new JsonResponse(
        [
            'validation failed' => $errorsString                    
        ]);
}

此验证本身有效,但我还想添加ID号验证

$errors = $validator->validate($data['id'], new Assert\Type('integer'));

现在我在$errors对象中有两个结果,如何将它们组合到一个错误对象中,从而为其中的任何一个输出错误?

1 个答案:

答案 0 :(得分:0)

您应该使用AssertCollection。在此处进行演示:How to Validate Raw Values