Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony] [Doctrine] Update query i akcja.
SnakeEater
post
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 12.03.2010

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


Witam,
potrzebuję updatetować obiekt na podstawie formularza. Aby zaoszczędzić na robocie chcę zrobić update poprzez query zamiast przez pobranie i save. Mam taki problem gdzie zrobić update rekordu. Chodzi tylko o zwiększenie wartości pola integer o jeden. Zastanawiam się czy action to właściwe miejsce na doctrine query. Może lepiej w modelu? A może w klasie dziedziczącej po table?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
destroyerr
post
Post #2





Grupa: Zarejestrowani
Postów: 879
Pomógł: 189
Dołączył: 14.06.2006
Skąd: Bytom

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


Też można zastosować wyzwalacz. Problem jest taki, że trigger niesie z sobą wiele problemów i rozrzuca działanie aplikacji na kod i na bazę.

Nie wiem jak masz to zrobić, bo nie wiem jak masz zorganizowany model. Jeśli jednak Twój "model" to co generuje Doctrine, to chyba dosyć dobrym rozwiązaniem byłaby metoda w tabeli. Przykład:
  1. class AnswerTable extends Doctrine_Table
  2. {
  3. public function increaseSomethingValueInObject()
  4. {
  5. }
  6. }
  7.  
  8. class User extends Doctrine_Record
  9. {
  10. public function postSave(Doctrine_Event $event)
  11. {
  12. Doctrine::getTable('Answer')->increaseSomethingValueInObject();
  13. }
  14. }
Go to the top of the page
+Quote Post
phpion
post
Post #3





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(destroyerr @ 23.07.2010, 11:00:04 ) *
Problem jest taki, że trigger niesie z sobą wiele problemów i rozrzuca działanie aplikacji na kod i na bazę.

Odbiegając nieco od tematu: moim zdaniem to nie jest aż taki problem. Sam często korzystam z triggerów czy własnych funkcji w bazie danych (akurat PostgreSQL). Osobiście wychodzę z założenia, że to co można oprzeć na bazie danych i co przyspieszy działanie/zautomatyzuje dany proces, należy wykonać na bazie danych. Zgodzę się, że przy ewentualnej migracji na inny silnik bazy danych mogą nastąpić komplikacje (konieczność przeniesienia wspomnianych elementów z bazy danych), ale czy jest to częste zjawisko? No ale to moje zdanie, nie każdy musi się z nim zgadzać (IMG:style_emoticons/default/smile.gif)
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: 15.10.2025 - 00:56