![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Czy użyje foreach czy each to nie zadziała. W $trainings mam ładną kolekcję obiektów Training zwróconą za pomocą ->get(). Samo $training->topic działa, nadpisze atrybuty ale gdy użyje to wraz save() to wszystko się psuje - dump zwraca za każdym razem id pierwszego obiektu. Nie umiem zrozumieć dlaczego to nie działa? Jakieś rozwiązania na szybko bym znalazł (skorzystać z QB czy tworzyć w każdym obrocie pętli $obj = new Training::find($training->id) ale to by było mega słabe (na każdy obrót pętli 2 zapytania). Generalnie najbardziej optymalnie by było coś w stylu:
Ale to już bardziej rozumiem, że nie przechodzi (ale nie ukrywam, było by miło jakby był też sposób aby w ten sposób masowo updatejtnąć wszystkie obiekty). |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Ostatecznie podszedłem do tego bardziej skomplikowanie.
Wyłuskałem z dokumentacji ciekawe metody isDirty() i getOriginal() i wykonuje tylko reIndex w momencie gdy zmieniła się godzina. Przy okazji jest to też rozwiązanie na problem na który bym wcześniej nie zwrócił uwagi - reindeks działał każdorazowo tylko na NOWĄ datę, a przy zmianie daty jest on potrzebny także dla oryginalnego dnia. Tak więc ostateczny kod:
Ten post edytował markonix 5.04.2017, 11:05:06 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 01:29 |