Prapodivný backjoin, kvůli zvláštní tabulce na překlady vícejazyčnách sloupců
- danielseek
- Člen | 42
Dobrý den,
mám tabulky: article, article_translation, article_category,
article_category_translation a user.
Vím jak bych vybral články, jejich překlady, autora a id kategorie („rubriky“). Nevím ovšem jak provést backjoin article_category na article_category_translation.
zkoušel jsem něco takového:
$db->table("article_translation")
->select("article.*, article_translation.*, article.user.name AS author,
article:article_category:article_category_translation:name AS category");
Bohužel se mi nedaří vysledovat dotaz, který to pokládá v sql. Když se zobrazí laděnka, tak mi nefungují queries v debugbaru.
Editoval danielseek (4. 4. 2013 23:01)
- danielseek
- Člen | 42
Potřebuju data pro grid a nechce se mi dělat milión callback funkcí, které by tohle ošetřovali, potřebuji řádková data…
Nicméně variantou je udělat callback jen pro tento vztah, jak by se to
udělalo?
Stačilo by nahradit $row[„category“] za
$row->related(„category_translation“, „category_id“)->fetch()?
Napadá vás nějaké rozumné řešení?
Editoval danielseek (5. 4. 2013 18:44)
- David Matějka
- Moderator | 6445
co tohle:
article.article_category:article_category_translation.name AS category
- enumag
- Člen | 2118
Potřebuju data pro grid a nechce se mi dělat milión callback funkcí, které by tohle ošetřovali, potřebuji řádková data…
Spíš potřebuješ datagrid s lepším API. ;-)
- danielseek
- Člen | 42
Ano, to funguje. Zkoušel jsem si vygenerovaný dotaz dát do admineru a vyhodil vše tak jak má. Nicméně grid mi vyhodil chybu (Nifty Grid):
Call to a member function getPrimary() on a non-object
u příkazu:
return $this->table->getPrimary();
Editoval danielseek (5. 4. 2013 19:19)
- danielseek
- Člen | 42
enumag
chápu na to je teď trochu pozdě… Tenhle data grid jsem nikde nenašel,
nevěděl jsem že nový addonový portál už funguje?
- danielseek
- Člen | 42
S těch addonů co jsou tam k dispozici, byl nejpřijatelnější… Aspoň má metodu setRenderer, takže můžu změnit způsob načítání sloupce z db…
- danielseek
- Člen | 42
TwiGrid díky moc za tip. Teď na něj koukám a asi ho do budocna nasadím. Prozíravě jsem si udělal kolem NiftyFridu vlastní obálku, která se mi mimojiné stará i o vytváření formulářů na základě těch informací z gridu, takže by to neměl být takový problém. Jsem teď ale v presu, takže to počká. Jestli se ale dostanu k nějakému neřešitelnému problému, možná sáhnu po tomto gridu.
Editoval danielseek (5. 4. 2013 21:07)