![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Witam!
Mam pewien problem z ograniczeniem liczby zapytań SQL w backendzie przy pracy z wersjami językowymi (tabele standardowe attraction oraz attraction_i18n). Mój generator.yml wygląda następująco: Kod ... list: title: Attractions list display: [_icon, name, is_active] filters: [is_active] object_actions: _edit: ~ _delete: ~ peer_method: doSelectWithI18nIfExists ... gdzie metoda doSelectWithI18nIfExists() wygląda tak:
Problem w tym, że w adminie wykonuje mi się masa zbędnych zapytań (myślałem, że rozwiążę to poprzez utworzenie innej metody pobierającej dane):
itd. dla każdego ID (w sumie 40 zapytań :|). Próbowałem wyłączyć w settings.yml ustawienie i18n ale i to nie przyniosło rezultatu. Pomyślałem, że może $obj->setName($v) jakoś wywołuje zapytanie SQL ale zakomentowanie tej linijki wcale nie zmienia liczby wykonywanych zapytań. Więc moje pytanie jest takie: w jaki sposób wyeliminować te dodatkowe (zupełnie zbędne) zapytania?. Pozdrawiam: pion |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 1 Dołączył: 14.07.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cześć Pion,
z tego co widzę, to metoda doSelectWithI18nIfExists w ogóle nie generuje tylu zapytań, stąd wniosek, że gdzieś to się dzieje poza nią. Niestety nie korzystałem jeszcze z 'peer_method' w generator.yml, więc nie mam pojęcia gdzie szukać. Może przeleć się jakimś debugerem gdzie masz założony breakpoint na końcówce metody doSelectWithI18nIfExists i zobacz w którym miejscu wywołują się te selecty po wyjściu z metody? P. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 23:43 |