NDB použití related() v šabloně
- Teyras
- Člen | 81
Zdravím,
jak nejlépe přistupovat v šabloně k 1:M vazbě? Psát do šablony jména
tabulek se mi opravdu nechce. Zkoušel jsem ukládat výslednou GroupedSelection
jako vlastnost jednotlivých řádků ($row->category =
$row->related(…)), to ale vede ke spoustě nevysvětlitelných chyb.
Díky
- jtousek
- Člen | 951
Ono by bylo lepší mít pro každou tabulku vlastní třídu reprezentující řádek, kde bys mohl mít příslušné metody. Např.:
public function getCategories() {
return $this->relates('category');
}
Díky Nette\Object potom v šabloně bude stačit
$row->cateories
.
Realizace je trochu složitější protože Nette na to nemá přímou podporu. Zkus si projít tohle vlákno, snad se ti některé z uvedených či odkázaných řešení bude zamlouvat.
- Teyras
- Člen | 81
jtousek napsal(a):
Ono by bylo lepší mít pro každou tabulku vlastní třídu reprezentující řádek, kde bys mohl mít příslušné metody. Např.:
public function getCategories() { return $this->relates('category'); }
Díky Nette\Object potom v šabloně bude stačit
$row->cateories
.Realizace je trochu složitější protože Nette na to nemá přímou podporu. Zkus si projít tohle vlákno, snad se ti některé z uvedených či odkázaných řešení bude zamlouvat.
Jo, to by bylo asi nejčistší, i když nejradši bych použil něco, co už v Nette je… Díky