Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony][Symfony2] Zapytanie z Entity
BugsBunny
post
Post #1





Grupa: Zarejestrowani
Postów: 206
Pomógł: 4
Dołączył: 2.04.2005

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


Ostatnio pisząc jakiś kod w symfony2 potrzebowałem wykonać następujące czynności związane z aktualizacją pola ordering.

Znużmy, że mam table (Entity), która ma pole ordering. Chciałbym w tym Entity zrobić metody, które obsługiwałby aktualizację orderingów po takich czynnościach jak usunięcie, dodanie nowego, zmiana istniejącego. Niestety w Entity nie mam dostępu do EntityManagera. Nie mogłem go też wstrzyknąć.

Jak realizujecie tego typu problemy? Czy wykonywanie zapytań z modelu jest dobrą praktyką? Może należałoby stworzyć Event, który realizowałby tego typu funkcjonalności.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
BugsBunny
post
Post #2





Grupa: Zarejestrowani
Postów: 206
Pomógł: 4
Dołączył: 2.04.2005

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


Zgadza się callbacks to podstawa do dalszego działania. Za pomocą callback mogę zmienić zawartość poszczególnego Entity, ale nie mogę zmienić innego. Nie mogę zrobić postDelete, który odejmie -1 dla wszystkich Enetity, które mają ordering większy od orderingu Entity, które było usunięte.

Właśnie w tym tkwi mój problem.

Cytat(misi3kk @ 15.09.2012, 14:34:51 ) *
W tym przypadku callback niewiele pomoże, bo wymagana jest edycja innych wpisów w bazie niż ten jeden.

Moim zdaniem jest to zły pomysł, aby w Entity mieszać cokolwiek związanego z bazą.

Masz dwa rozwiązania:

- dodać event i na jego podstawie aktualizować zawartość bazy
- zdecydować się na coś gotowego: m.in. stof doctrine extensions(http://knpbundles.com/stof/StofDoctrineExtensionsBundle) lub phpcr (http://knpbundles.com/doctrine/DoctrinePHPCRBundle)

Być może jest coś jeszcze, ale ja używam od jakiegoś czasu Stof i działa, więc się tym dłużej nie interesowałem.



Używałem pluginu, o którym piszesz ale trochę w innych celach. Czy mógłbys napisać jak konkretnie rozwiązać mój problem za pomocą tego bundla?

W przypadku eventów, trochę boję się ich używać do tego typu rozwiązań z prostego powodu. Trudniej się utrzymuje, debuguje aplikacje opartą o architekturę eventów. Zwłaszcza jeśli wpływa on na dane w bazie.
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: 28.12.2025 - 02:47