konto usunięte

Temat: Dodawanie krotki do tabeli, jeżeli taka krotka nie...

Hej!

Mam embeddowane formularze tworzące mi formularz rejestracyjny w Symfony1.4/Doctrine. Mam kilka pól, które muszą zachowywać się w następujący sposób: user wpisuje np. miasto - Gdynia. Cities są osobną tabelą pomocniczą do Profiles, jest między nimi relacja jeden do wiele. Przy zapisie formularz musi sprawdzić, czy takie miasto jak Cities już istnieje - jeżeli nie, dodaje je a jako klucz obcy w Profiles ustawiane jest jego id. Jeżeli natomiast takie miasto już istnieje - kluczem obcym w Profiles staje się id istniejącej krotki.

Niby prosta rzecz do zakodowania z palca, jednak uzywam autogeneratora i wolałbym to zakodować "po Bożemu" w formularzu, lub którejś z klas modelu. Help! :)
Adam W.

Adam W. senior php
developer, Symfony

Temat: Dodawanie krotki do tabeli, jeżeli taka krotka nie...

Grzegorz Kaszuba:
Niby prosta rzecz do zakodowania z palca, jednak uzywam autogeneratora i wolałbym to zakodować "po Bożemu" w formularzu, lub którejś z klas modelu. Help! :)

z tego co pamiętam w klasie formularza jest metoda doCleanUp czy coś takiego. tam możesz zrobić sprawdzanie co user wpisał i ustawiać w tabeli profile odpowiednie ID pobranego miasta (lub nowo utworzonego).

a swoją drogą to można by zrobić autocompleter, żeby nie pojawiały się podobne wpisy tego samego miasta.

konto usunięte

Temat: Dodawanie krotki do tabeli, jeżeli taka krotka nie...

Adam W.:
a swoją drogą to można by zrobić autocompleter, żeby nie pojawiały się podobne wpisy tego samego miasta.

Dokładnie o takie rozwiązanie mi chodzi - będzie ajaxowy autocompleter, ale musi pozostawiać możliwość dodania nowego miasta. Zatem mamy dwie możliwości

a/ user wpisze nazwe miasta, które już w bazie istnieje - istinejąca krotka musi zostać podpięta do nowego profilu
b/ user poda nowe miasto - wpis zostanie utworzony i jego id trafi do profilu
Krzysztof Durołek

Krzysztof Durołek lead developer,

Temat: Dodawanie krotki do tabeli, jeżeli taka krotka nie...

Witam,

może warto też rozważyć dodanie własnego Validatora i tam wykonać odpowiednie akcje. Być może dobre byłoby wrzucenie odpowiedniego kodu w funkcję do doUpdate embedowanego formularza (na wzór pluginu Apply).

konto usunięte

Temat: Dodawanie krotki do tabeli, jeżeli taka krotka nie...

Na moment obecny zrezygnowałem niestety z autogeneratora - może jak podskoczy mi nieco skill w tym temacie, to powrócę. Odpusciłem sobie rownież embeddowane formularze, pozostałem przy wersji "dla plebsu", mianowicie osobno waliduję odpowiednie formularze i manipuluję obiektami w akcji.

Całość dla porządku wrzuciłem w tranzakcję, więc jeżeli cokolwiek jest "nie halo", to robi się rollback i już. To hobbystyczny projekt nonprofit, od paru dni testuję to rozwiązanie na userach i notifier przestał rzucać błędami i wygląda, że jest spoko...

Następna dyskusja:

upload pliku - lokalnie dzi...




Wyślij zaproszenie do