Doctrine соответственно создает 2 класса формы: NewsForm и NewsTranslationForm
В NewsForm делаю $this->embedI18n(array('ru', 'uk'));
Валидация основной формы должна проходить при успешной валидации одной из embed форм.
Как такое реализовать?
Пробовал следующее:
NewsForm ....
$this->getValidatorSchema()->setPostValidator(
new sfValidatorOr(array(
$this->getValidator('ru')->getPostValidator(),
$this->getValidator('uk')->getPostValidator(),
))
);
.....
NewsTranslationForm $this->setValidators(array(
'title' => new sfValidatorPass(),
'content' => new sfValidatorPass(),
));
$this->validatorSchema->setPostValidator(
new sfValidatorAnd(array(
new sfValidatorSchemaFilter('title', new sfValidatorString(array('max_length' => 255))),
new sfValidatorSchemaFilter('content', new sfValidatorString())
)));
В этом варианте почему то не срабатывает sfValidatorOr основной формы.
P.S. Symfony 1.4.8 with Doctrine ORM