Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony][Symfony2]Dynamicznie generowany formularz
Forum PHP.pl > Forum > PHP > Frameworki
bartos12
Witam,

mam mały problem z formularzami. Zacznę od kodu mojego forma :

  1. $builder->add('profilName', 'text', array('label' => 'Name'))
  2. ->add('type', 'entity', array(
  3. 'label' => 'Type',
  4. 'class' => 'AcmeFootballBundle:Type',
  5. 'query_builder' => function($er){
  6. return $er->createQueryBuilder('t')->orderBy('t.typeId', 'ASC');
  7. }
  8. ))
  9. ->add('birthday', 'date', array('label' => 'Birthday'))
  10. ->add('town', new TownAddType(), array('label' => ' '))
  11. ->add('nation', new NationAddType(), array('label' => ' '))
  12. ->add('finance', new FinanceAddType(), array('label' => ' '))
  13. ->add('image', new ImageAddType())
  14. ->add('player', new PlayerAddType());


Powyższy formularz ma pozwolić mi stworzyć "profil" na mojej stronie. Profil może być trenerem, albo zawodnikiem. W przypadku gdy w liście rozwijanej

  1. ->add('type', 'entity', array(
  2. 'label' => 'Type',
  3. 'class' => 'AcmeFootballBundle:Type',
  4. 'query_builder' => function($er){
  5. return $er->createQueryBuilder('t')->orderBy('t.typeId', 'ASC');
  6. }
  7. ))



pojawi się właśnie zawodnik chce aby pojawiły się dodatkowe pola które są zdefiniowane tutaj :

  1. ->add('player', new PlayerAddType());


Jeśli jednak w liście jest trener to pola zawarte w PlayerAddType() mają się nie pojawić. Problem polega na tym że nie wiem za bardzo jak manipulować tym formularzem aby osiągnąć zamierzony efekt.
rcetra
Może to Ci pomoże: http://sf.khepin.com/2011/08/finally-throu...ake-it-dynamic/
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.