2013-06-27 9 views
28

Sto cercando di ottenere l'entità all'interno del proprio modulo. Mi piace ricordare un metodo getData(), ma non esiste all'interno del modulo e non riesco a ricordare come usarlo.Come accedere all'entità all'interno del metodo buildForm di un modulo

C'è un modo per ottenere l'entità all'interno del metodo buildform non utilizzando un listener di eventi?

Insomma, qualcosa di simile:

public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
     /*some method to get the entity of the form such as getEntity????????*/ 
     $builder->add('field'); 
    } 

risposta

54

ho trovato:

public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
     $entity = $builder->getData(); 
     $builder->add('field'); 
    } 
+22

prega di notare che se si utilizza il tipo di raccolta è necessario utilizzare gli eventi di forma $ builder- > addEventListener (FormEvents :: PRE_SET_DATA, funzione (evento FormEvent $) uso ($ builder) { /** @var YourEntity $ dati */ $ data = $ Event-> getData(); }); – nvvetal

Problemi correlati