Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony] Dodawanie do dwóch tabel z jednego formularza
Forum PHP.pl > Forum > PHP > Frameworki
pewex
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 questionmark.gif?
Tabela 2 która pobiera dane z $form2 posiada klucz obcy do tabeli 1
Kamil Adryjanek
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.
pewex
dzięki działa
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.