0
我试图添加一个动态验证程序到一个集合,但我试过的一切都没有奏效。ZF2动态收集验证程序
如果我有 - 我们说 - 集合中的3个字段集,我只希望第二个字段集(名称为“1”)具有必需的字段。
$input_filter = new Filter\Edit();
$collection_input_filter = new CollectionInputFilter();
$orderDetailFilter = new Filter\OrderDetail($serviceManager);
$collection_input_filter->setInputFilter($orderDetailFilter);
$input_filter->add($collection_input_filter, 'details');
$this->setInputFilter($input_filter)
->setHydrator(new DoctrineHydrator($entityManager))
->setObject(new Order());
不,我不认为你可以做到这一点。由于fieldsets的输入过滤器是相同的实例。 – Pradeep
我可以在表单绑定实体对象之后迭代字段集,并且在验证表单之前,我可以为每个验证组设置或添加新的验证器,但不考虑。如果你有一对多的表单,这不是一个好的想法,在许多部分对象可以有不同的要求 – user3143015
尝试打印每个字段集的输入过滤器的对象ID。它会打印相同的对象ID,所以如果你附加不同的校验器,它会一次又一次地修改同一个对象,所以它不会生效。 – Pradeep