Activer la validation d'un sous-formulaire en Symfony2

Activer la validation d'un sous-formulaire en Symfony2
par Rémi Leclerc, le 09/06/2015

Pour activer la validation d'un formulaire qui est appelé dans un autre formulaire (validation non activée par défaut), il suffit de définir l'option cascade_validation à true.

L'exemple ci-dessous va activer la validation de tous les sous-formulaires :

public function buildForm(FormBuilderInterface $builder, array $options) {
    // ...
    $builder->add('sousForm', new SousFormType());
    // ...
}

public function setDefaultOptions(OptionsResolverInterface $resolver) {
    $resolver
        ->setDefaults(array(
            // ...
            'cascade_validation' => true
        ))
    ;
}