![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 15 Dołączył: 15.11.2007 Skąd: Nowogród Bobrz. Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Potrzebuję logować wszelkie zmiany danych użytkowników. Chciałem to zrobić automatycznie przy każdym zapisie do tabeli userów. Dopisałem więc metody preSave oraz postSave, mniej więcej tak:
I to generalnie działa... ale obydwa pola mają taką samą wartość - już tą po zapisaniu. A fajnie byłoby jednak żeby dostać wartość pola 'name' PRZED zapisaniem rekordu (zgodnie zresztą z nazwą metody). Kombinowałem też z preUpdate/postUpdate a także ze stworzeniem osobnej klasy potomnej do Doctrine_Listener i podłączać ją do klasy User (w metodzie setUp()) lub do całego obiektu połączenia. Za każdym razem jeśli działa to zapisuje nowe wartości pól :/ Zrobię to w końcu po prostu w kontrolerze, ale ciekawi mnie jak to zrobić w Doctrine. Heh, już znalazłem, niech będzie dla potomnych ![]() Trzeba sobie pobrać:
i mamy tablicę z poprzednimi wartościami zmodyfikowanych pól. Ten post edytował thek 7.03.2010, 01:35:36
Powód edycji: [thek]: Niewłaściwy dział. Przeniesiono gdzie trzeba :)
-------------------- Efemental.pl - nasz punkt słyszenia :: recenzje :: tylko metal!
Opensource'owy klon Cantra: http://github.com/magnax/Simtr |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 23:36 |