Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SF2][Symfony] Rozszerzony Form Type, Select zależny od drugiego selecta.
basso
post
Post #1





Grupa: Zarejestrowani
Postów: 155
Pomógł: 1
Dołączył: 12.12.2010

Ostrzeżenie: (0%)
-----


Witam,
już wymiękam... no nie mogę tego nigdzie znaleźć, co chcę zrobić .

Mam formularz w którym są jakieś tam pola i w nim są dwa wyjątkowe: categoria i podkategoria. Są one połączone z innymi dwoma tabelami. Teraz chcę zrobić tak, że jak wybieram najpierw kategorię, to przeładowuje mi się strona (ewentulanie asynchronicznie ajax) i ładuje dla tej wybranej kategorii odpowiedniego selecta z podkategoriami. Chodzi o to, że dane kategorie są w odpowiednich kategoriach i nie mogą wybrać byle jaką podkategorię .

Próbowałem tego: http://symfony.com/doc/current/cookbook/fo...dification.html
Ale nie widzę tutaj możliwości wrzucenia akcji onchage, ani przekazania argumentu do tych listenerów, bo muszę odpowiednie ID przekazać kategorii, by na postawie tego id zaciągnać odpowiednie kategorie.

Czy może ktoś budował taki formularz albo taki mechanizm i mógłby pomóc.


Ogólnie jak wywołuje jakiego kolwiek listenera czy to w formie:
  1. $builder->addEventListener(FormEvents::PRE_SET_DATA, function(FormEvent $event){
  2. // ... add a choice list of friends of the current application user
  3. });


czy w to formie

  1. $factory = $builder->getFormFactory();
  2.  
  3. $builder->addEventListener(
  4. FormEvents::PRE_SET_DATA,
  5. function(FormEvent $event) use($user, $factory){
  6. $form = $event->getForm();
  7.  
  8. $formOptions = array(
  9. 'class' => 'Acme\DemoBundle\Entity\User',
  10. 'multiple' => false,
  11. 'expanded' => false,
  12. 'property' => 'fullName',
  13. 'query_builder' => function(EntityRepository $er) use ($user) {
  14. // build a custom query, or call a method on your repository (even better!)
  15. },
  16. );
  17.  
  18. // create the field, this is similar the $builder->add()
  19. // field name, field type, data, options
  20. $form->add($factory->createNamed('friend', 'entity', null, $formOptions));
  21. }
  22. );



Zawsze mam komunikat jakby nie działał ten lister jakby go nie było:
  1. FatalErrorException: Error: Class 'Backend\CmsBundle\Form\FormEvents' not found in C:\wamp\www\rw\src\Backend\CmsBundle\Form\PagesType.php line 30
  2.  


Ten post edytował basso 8.05.2013, 14:57:17
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 04:42