2013-06-27 9 views
28

Próbuję uzyskać podmiot wewnątrz własnej postaci. Leniuch pamiętam metodę getData(), ale nie istnieje ona w formularzu i nie pamiętam, jak z niej korzystać.Jak uzyskać dostęp do jednostki wewnątrz metody buildForm formularza

Czy istnieje jakiś sposób, aby uzyskać jednostkę wewnątrz metody buildform nie stosując detektor zdarzeń?

To znaczy, coś takiego:

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

Odpowiedz

54

znalazłem to:

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

Należy pamiętać, że jeśli używasz typu w kolekcji trzeba użyć zdarzenia formularza $ builder- > addEventListener (FormEvents :: PRE_SET_DATA, funkcja (FormEvent $ event) użyj ($ builder) { /** @var YourEntity $ data */ $ data = $ event-> getData(); }); – nvvetal

Powiązane problemy