Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SF2][Symfony2][Symfony] Translatable i repository
Forum PHP.pl > Forum > PHP > Frameworki
blackroger
Mam pytanie. Posiadam kolumnę slug, która jest tłumaczona. Na podstawie adresu (polskiego, bądź angielskiego) chcę, aby podczas zapytań doctrine automatycznie joinował zapytanie, tak abym bez zbędnych dodatkowych joinów dostał wynik.
Przeczytałem dokumentację i to co udało mi się wdrożyć to:
  1. $query->setHint(
  2. \Doctrine\ORM\Query::HINT_CUSTOM_OUTPUT_WALKER,
  3. 'Gedmo\\Translatable\\Query\\TreeWalker\\TranslationWalker'
  4. );
  5.  


jakkolwiek nie znalazłem nigdzie, jak zrobić, aby każde zapytanie dla danego repozytorium dodawało tego joina z automatu... dodatkowo aby obsługiwało metody magiczne findOneBySlug itd... mam nadzieję, że da się to zrobić...?
misi3kk
Rozważałeś napisanie swojego repository?

http://symfony.com/doc/2.0/book/doctrine.h...ository-classes

Metody możesz dodać wtedy dowolne, a zapytania zależą tylko od Ciebie. Alternatywnie możesz przejrzeć klasy z bundla Gedmo czy nie ma czegoś gotowego, ale pewnie i tak nie będzie w 100% dopasowane.
blackroger
Tak... mam swoje repository...jakkolwiek czasem gdzieś się używa metod magicznych z przyzwyczajenia bądź krótszego zapisu i wtedy okazuje się błąd, że rekord nie został znaleziony (bo nie szukał przy joinowaniu języków). Jeżeli tak jest, to w takim przypadku, według mnie, najlepiej całkowicie wyeliminować zapytania za pomocą magicznych metod dla tabel tłumaczonych bo może się narobić bałagan...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.