Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SF][Symfony2] Event listeners - sens i korzystanie.
BigPig
post
Post #1





Grupa: Zarejestrowani
Postów: 61
Pomógł: 9
Dołączył: 18.06.2013
Skąd: Białystok

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


Witajcie,

Nie mam potężnego doświadczenia w fw i w związku z tym zainteresowało mnie zagadnienie event listenerów.

Trochę sobie o nich poczytałem, ale ciężko mi sobie wyobrazić jakieś fajne sytuacje, gdzie można by je wykorzystać(oprócz tego opisanego w dokumentacji).

1) Dacie jakieś przykłady?
2) Czy m.in. można nimi zastępować mysql'owe triggery(wyzwalacze) i czy to jest sensowne(czy takie jest m.in. przeznaczenie event listenerów)?
3) Zamiast bawić się w mysql'owe triggery może lepiej krok po kroku usuwać wpisy w ten sposób?
  1. $em->remove($obiekt1);
  2. $em->remove($obiekt2);
  3. $em->remove($obiekt3);
  4. $em->flush();


Ten post edytował BigPig 7.08.2014, 07:38:22
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


ORM ma przejac wszystkie zadania na bazach wiec lepszym pomyslem jest przeniesienie triggerow na ORMowe klasy, bo kiedy baza czegos nie może to ORM to ogarnie, nie ma tez problemow z migracjami na inne bazy danych bo w 99% wystarczy tylko zmienić providera.
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




@skowron-line:
Ja akurat jestem zdania, że wszystko co się da lepiej robić po stronie bazy danych (triggerami czy chociażby usuwaniem kaskadowym). Zyskasz przede wszystkim na wydajności, a przede wszystkim na spójności danych. Ingerując w zawartość bazy z poziomu samej bazy danych (pomijając aplikację) masz pewność, że operacje powiązane również zostaną wykonane. Oczywiście są sytuacje, gdy nie będziesz w stanie wykonać czegoś po stronie bazy (z technicznego punktu widzenia) i będziesz zmuszony zrobić to po stronie aplikacji, ale co się da dawałbym po stronie bazy.
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: 11.10.2025 - 03:54