Datagrid – M:N v jednom řádku
- potapnik
- Člen | 127
Zdravím :)
Chtěl jsem se zeptat, jestli je vůbec teoreticky možné naplnit komponentu Datagrid tak, aby v jednom řádku bylo možné vypsat všechny závislosti M:N? Tj. např.:
id|nazev|text|tagy
01|Nazev|Blah|tag1, tag2, tag3, tag4
Pouzivam datagrid od Romana Sklenare, konkretne fork od ricco24.
Predem dik.
- klip
- Člen | 11
Mozna udelat si vlastni DataSource, respektive zdedit z toho, co pouzivas a prepsat to trochu, minimalne fetch metodu. Sam budu presne tohle resit a zatim jsem si jen napsal vlastni DataSource (zalozenym na RedBean ORM). Tohle jsem chtel resit jako druhej krok a na prvni zamysleni se mi to zda jako dobrej napad, tak uvidim ;)
- llsm
- Člen | 121
Doporucuji prizpusobit dotaz do databaze, aby vracel jedno to pole
pospojovane pomoci SQL funkce GROUP_CONCAT
(MySQL), viz:
<?php
public function getQuery() {
return dibi::dataSource('SELECT [table].[id] AS [id], [table].[name] AS [nazev],
[table].[text] AS [text], GROUP_CONCAT( DISTINCT [other_table].[tag] SEPARATOR ', ') AS [tagy]
FROM [table]
LEFT JOIN [rel_table_other_table] ON ([table].[id] = [rel_table_other_table].[id_table])
LEFT JOIN [other_table] ON ([rel_table_other_table].[id_other_table] =[other_table].[id])')
}
?>
Mam vyzkousene, ze tohle funguje i s puvodnim datagridem od RS.