Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SF2][Symfony] Formularz - kolekcja - defaultowa wartość
ziolo
post 30.03.2014, 22:22:01
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 20
Dołączył: 17.01.2009
Skąd: Kraków

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


Mam taką sytuację: User i Team. Relacja wiele do wielu. Zrobiona poprzez pośrednią encję Member. Team może zawierac wiele Memberów. User może być wielokrotnie Memberem różnych Teamów.

Chcę dodać nowy Team.

Mam formularz TeamType mający jako kolejcę Member:
  1. public function buildForm(FormBuilderInterface $builder, array $options)
  2. {
  3. $builder
  4. ->add('users', 'collection', array(
  5. 'type' => 'member_form', // - alias dla formularza Member.
  6. ))
  7. ;
  8. }


Formularz Member wyświetlający selecta z userami.
  1. public function buildForm(FormBuilderInterface $builder, array $options)
  2. {
  3. ->add('user', 'entity', array(
  4. 'class' => 'User'
  5. ))
  6. }



I teraz mam kontroler i chcę dodać Team z 4 Memberami. Z tym, że pierwszy domyślnie jest zalogowanym userem.

  1. $user = $this->container->get('security.context')->getToken()->getUser();
  2. $member1 = new Member();
  3. $member2 = new Member();
  4. $member3 = new Member();
  5. $member4 = new Member();
  6. $member1->setUser($user); // pierwszemu ustawiam defaultowego usera.
  7. $team = new Team();
  8. $team->addMember($member1);
  9. $team->addMember($member2);
  10. $team->addMember($member3);
  11. $team->addMember($member4);
  12. $form = $this->createForm(new TeamType(), $team);


I wyświetlam formularz, wszystko gra, lecz niestety w pierwszym selecie nie ma defaultowo aktualnego użytkownika. Nie mam pojęcia czemu :/
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 Wersja Lo-Fi Aktualny czas: 24.06.2025 - 04:32