Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony] Dodawanie do dwóch tabel z jednego formularza
pewex
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 5.12.2008

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


chce dodać dane do dwóch tabel z jednego formularza

formularze wyświetlałem za pomoca konstrukcji
$this->mergeForm($form2);
w form podstawowym, ale nie miałem pojęcia co z tym potem zrobić bo wszystkie pola miały nazwę od pierwszego formularza i nie wiedziałem jak pobrać dane

potem wpadłem na taki pomysł aby w kontrolerze dać dwa razy
$form1 = new Form1();
$form2 = new Form2();

Wszystko działa, wyświetla się tak jak chce, potem pobieram i zapisuje dane z Form1 do tabeli 1.
I tutaj problem - jak mam podać do $form2 jakie jest id do rekordu z tabeli 1 (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?
Tabela 2 która pobiera dane z $form2 posiada klucz obcy do tabeli 1
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Kamil Adryjanek
post
Post #2





Grupa: Zarejestrowani
Postów: 16
Pomógł: 3
Dołączył: 2.02.2009

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


Możesz to zrobić na kilka sposobów.

Najłatwiejszym rozwiązaniem będzie chyba jeśli zrobisz to tak:

Kod
$objectFromForm1 = $form1->save();

$form2->setValue( 'foreignKey', $objectFromForm1->getForeignKey() );

$form2->save();


przy czym metody setValue() na formie nie istnieje. Będziesz ją musiał dodać do BaseFormPropel.class.php tak jak jest to pokazane na blogu: http://blog.adryjanek.eu/2009/01/17/symfon...unction-part-2/ .

To powinno rozwiązać Twój problem.
Go to the top of the page
+Quote Post
pewex
post
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 5.12.2008

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


dzięki działa
Go to the top of the page
+Quote Post

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: 25.12.2025 - 13:01