Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony] dynamiczne pobieranie danych i zapis
AxZx
post
Post #1





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

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


witam

taki dziwny problem mam, nie wiem czy sam go stworzyłem czy po prostu nie da się tego tak łatwo zrobić.

mam 6 różnych formularzy, 6 różnych modeli czyli 6 różnych tabel w bazie.
w kontrolerze chciałbym to w jednym miejscu zapisywać, ale tak, żebym nie musiał tam podawać, które dane zapisuje. po prostu wszystkie dane muszą być zapisane.
problem w tym, że w formularzu mam checkboxa, który ma wartość 0 lub 1.

dane zapisuje w ten sposób:
  1. <?php
  2. $dane->fromArray($this->getRequest()->getParameterHolder()->getAll(), BasePeer::TYPE_FIELDNAME);
  3. $dane->save();
  4. ?>


problem w tym, że gdy ten checkbox jest odznaczony (ma wartość 0) to nie występuje on w tabeli z parametrami - w bazie nie są zapisywane dane, że ktoś odhaczył tego checkboxa (czyli powinno zapisać się 0).

jak mógłbym to inaczej zrobić?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
AxZx
post
Post #2





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

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


chyba nie będzie to takie proste.

na podstawie parametru przesłanego z URL (lub innego) tworze odpowiedni model.

  1. <?php
  2. $nazwa_modelu = $this->getRequestParameter('nazwa_modelu');
  3.  
  4. $model = new $nazwa_modelu();
  5. $model->fromArray($this->getRequest()->getParameterHolder()->getAll(), BasePeer::TYPE_FIELDNAME);
  6. $model->save();
  7. ?>


więc jak? musiałbym każdemu modelowi taką metodę pisać. przy określonej ilości, powiedzmy 5 to jeszcze znośne jest. ale jak za kilka miesięcy wprowadzę kolejny model to takich poprawek może być więcej. bo to nie byłoby jedyne miejsce gdzie muszę to zmieniać.

hmm ale tak sobie myślę, że to mógłby być dobry pomysł. nie tyle dobry co jedyny rozsądny:) przy braku innych prostszych - mniej inwazyjnych w modele.
dzięki
Go to the top of the page
+Quote Post

Posty w temacie
- AxZx   [Symfony] dynamiczne pobieranie danych i zapis   9.10.2008, 21:32:18
- - arecki   Może rozwiąż to za pomocą JS ? Zrób hidden_tag i z...   10.10.2008, 14:48:19
- - AxZx   chciałem unikać JS jak tylko się da, no ale jak in...   10.10.2008, 19:55:08
- - jarek_bolo   A nie możesz ustawić domyślnej wartości na 0 w tej...   10.10.2008, 21:06:58
- - AxZx   ustawiłem. ale co to da? widzę jakie są wykonywane...   10.10.2008, 22:00:24
- - jarek_bolo   Ty no ale ja chyba czegoś nie kumam. Przecież jak ...   11.10.2008, 01:46:42
- - Cysiaczek   Czy w schema.yml dajesz pole typu boolean, czy tin...   11.10.2008, 02:05:02
- - AxZx   Cytat(jarek_bolo @ 11.10.2008, 02:46...   11.10.2008, 08:43:47
- - jarek_bolo   Aaa, no chyba, że tak no i jawnie tego nie napisał...   11.10.2008, 11:21:58
- - athabus   Możesz nadpisać metodę save, tak aby w razie braku...   12.10.2008, 17:20:54
- - AxZx   chyba nie będzie to takie proste. na podstawie pa...   12.10.2008, 19:12:09
- - woj_tas   [HTML] pobierz, plaintext <input type="hid...   13.10.2008, 10:15:01
- - AxZx   wiedziałem, że musi być jakieś proste, normalne ro...   13.10.2008, 10:23:20
- - Wojciech Bańcer   Ja osobiście stosuję JEDNO pole hidden, które zawi...   13.10.2008, 20:55:59
- - AxZx   a ja wykonuje tylko jedno zapytanie update....   13.10.2008, 21:00:26
- - Wojciech Bańcer   Jeden update zmienia Ci dwa rodzaje wartości? Podr...   13.10.2008, 21:08:27
- - AxZx   ja pisze na temat - w tym temacie wykonuje się jed...   13.10.2008, 21:35:24


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: 10.10.2025 - 21:47