使用Symfony2对实体进行级联验证

时间:2014-05-08 17:12:49

标签: validation symfony

我想知道如何使用验证器服务对实体进行级联验证。

使用:

$validator = $this->get('validator');
$errorList = $validator->validate($entity);

不执行"实体的验证"儿童实体。

我非常确定可以使用表单验证(使用'cascade_validation' => true)来完成它。

1 个答案:

答案 0 :(得分:6)

我认为(默认情况下)验证不会在指向对象的属性上处理。对于validate()方法设置为true the traverse option的数组,可以执行此操作。

要绕过此限制,您应该考虑使用Valid Constraint

使用this well explained example检查Valid Constraint,并且父对象上的处理验证还会检查子对象验证规则。

Valid Constraint还提供了a traverse option,可用于检查指向对象数组的属性。