Как я могу добавить нарушение в коллекцию?
Моя форма выглядит так:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$factory = $builder->getFormFactory();
$builder->add('name');
$builder->add('description');
$builder->add('manufacturers', null, array(
'required' => false
));
$builder->add('departments', 'collection', array(
'type' => new Department
));
}
У меня есть валидатор класса на сущности, которая представляет форму, которая вызывает:
if (!$valid) {
$this->context->addViolationAtSubPath('departments', $constraint->message);
}
Который будет добавлять только «глобальный» ошибка в форме, а не ошибка в дополнительном пути. Я предполагаю, что это потому, что отделы - это коллекция, встраивающая другой FormType.
Если бы я изменилсяdepartments
в одном из других полей он работает нормально.
Как я могу заставить эту ошибку появляться в правильном месте? Я предполагаю, что это будет работать нормально, если бы моя ошибка была на одном объекте в коллекции и, таким образом, отображалась в дочерней форме, но мой критерий заключается в том, что нарушение происходит, если ни один из объектов в коллекции не помечен как активный, поэтому для этого требуется быть на родительском уровне.