2012-12-14 5 views
0

Il y a un peu de wey à savoir si le formulaire parent est valide. C'est le code. Il lance toujours: "Vous ne pouvez pas appeler isValid() sur un formulaire qui n'est pas lié.". Je vous remercie!!Vérifie si le parent du formulaire est valide dans Symfony2

class FoorType extends AbstractType 
{ 
    public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
     $builder 
      ->add('field_1') // Required 
      ->add('field_2') // Required 
      ->add('field_3') // Required 
      ->add('bar', 'my_custom_form_type') // Not required 
    } 
} 

class MyCustomFormType extends AbstractType 
{ 
    public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
     $builder->addEventListener(FormEvents::POST_BIND, function(DataEvent $event) { 
      $form = $event->getForm(); 
      $data = $event->getData(); 

      if ($form->getParent()->isValid()) { 
       // Do smething... 
      } 
     }); 
    } 

    public function getParent() 
    { 
     return 'text'; 
    } 

    public function getName() 
    { 
     return 'my_custom_form_type'; 
    } 
} 

Répondre

0

Salut trouvé la solution !!

utilisation getParent() dans addEventListener:

$builder->getParent()->addEventListener(FormEvents::POST_BIND, function(DataEvent $event) 
{ 
    // Code 
}); 
Questions connexes