Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [inny][Symfony2] Jeden do wielu - formularz - jak ?
spacja
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 1
Dołączył: 29.10.2012

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


Witam, jestem świerzak jeżeli chodzi o symfony. Chciałbym się zapytać jak zrobić dodawanie rekordów jednocześnie do dwóch tabel.
Otóż mam :

1. tabela "Kth" - entity Kth.php
2. tabela "Adresy" - entity Adresy.php

Tabele połączone ze sobą w relacji : Jeden do Wielu ( jeden kth może mieć wiele adresów).

Teraz chciałbym zrobić formularz, korzystają np. z jQuery.
1. wpisuję dane kontrahenta (firma, nip etc.)
2. dodaję N adresów (np. adres korespondencyjny/ siedziba / oddział etc. ) : N - liczba zmienna ( N >= 1)

Dodawanie nowego adresu chcę zrealizować przy pomocy np. button'a; po kliknięciu klonuje odpowiednie pola i wstawia do formy.


Korzystając z transakcji dodać te dane do bazy :
1. dodaj dane kth
dla N adresów ---
2. jeżeli dodano kth bez problemu, dodaj adres[N]

3. jeżeli dodano wszystko poprawnie - zapisz
4. jeżeli gdzie wystąpił błąd - rollback.

I teraz Panie i Panowie - jak to zrealizować ? W C# sprawa prosta, dodawałem sobie na kontrolkę np. 5 adresów, później w pętli zapisywałem każdy po kolei, jak coś poszło nie tak to wyświetlałem error i rollback z bazy i wsio. A tutaj mam spory problem z realizacją tego zagadnienia (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
danio1021
post
Post #2





Grupa: Zarejestrowani
Postów: 4
Pomógł: 1
Dołączył: 24.04.2009

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


Okej, a więc, transakcje w Doctrine (bo zakładam, że go używasz) opisane są bardzo ładnie tutaj: http://docs.doctrine-project.org/en/2.0.x/...oncurrency.html. Generalnie - nie musisz nic robić, Doctrine robi to za Ciebie, ale jeśli chcesz mieć nad tym większą kontrolę - tam znajdziesz rozwiązanie (Approach 2)
A to co starasz się zrobić, kiedyś znalazłem całkiem eleganckie rozwiązanie: http://toni.uebernickel.info/2012/03/15/an...-prototype.html (IMG:style_emoticons/default/smile.gif)

Ten post edytował danio1021 29.10.2012, 19:43:43
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: 27.12.2025 - 11:47