Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony][Symfony2]Wstrzykiwanie danych do formularza w obsludze zdarzenie POST_SUBMIT
gaua69
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 25.06.2013

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


Hej,

Czy istnieje mozliwosc wstrzykniecia danych do formularza w obsludze tego zdarzenia? Chodzi mi o cos takiego:

  1. public function onPostSubmit(FormEvent $e)
  2. {
  3. $x = array(1, 2, 3, 4);
  4.  
  5. $form = $e->getForm();
  6. $data = $form->getData();
  7.  
  8. //tutaj dodaje $x do $data
  9.  
  10. $form->setData($data);
  11. }


Problem polaga na tym ze $x nie jest powiazane z encja ktora kryje sie pod $data, wiec nie mam tam setera gdzie moglbym ustawic te dane. Myslalem nad dodaniem nowego pola do forma i usawieniem opcji 'data' => $x ale dostaje blad ze nie zmienie forma gdy jest juz zbindowany(co jest dosyc logiczne). Zrobienie tego w obsludze zdarzenia PRE_SUBMIT tez odpada, bo $x tworze na podstawie danych wprowadzonych do forma. Jak to rozwiazac po ludzku? (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
gaua69
post
Post #2





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 25.06.2013

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


No wlasnie dokladnie tak robie, mam 3 wbudowane formy(takie same) ktorych nie mapuje. Tyle, ze w kontrolerze musze robic cos takiego:

  1. $data = array(
  2. $form->get('pole1'),
  3. // pole2 i pole3
  4. );
  5.  
  6. foreach($data as $d) {
  7. //tworzenie obiektu i persistowanie
  8. }


Chcialem odciazyc kontroler od tego i przeniesc to do listenera ktory przygotowal by gotowe obiekty i dodal je do forma.

Ogolnie chodzi o to, ze uzytkownik przy rejestracji ma mozliwosc wyslania 3 zaproszen(imie, nazwisko, email), wiec dodalem te 3 formy w jednym kroku rejestracji, podczas submitu formularza rejestracji dodaje to do tabeli Zaproszenia, a pozniej przy aktywacji/potwierdzeniu konta uzytkownika, wysylam te zaproszenia na podane maile. Moze jest lepszy sposob na to?

Ten post edytował gaua69 23.10.2013, 21:08:19
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 28.12.2025 - 06:34