NDB použití related() v šabloně

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Teyras
Člen | 81
+
0
-

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

vvoody
Člen | 910
+
0
-

Nevadi ze prides o lazy load ked chces preliezat tie tabulky uz v modely/presenteri?

Teyras
Člen | 81
+
0
-

V tomhle konkrétním případě je mi to absolutně fuk.

jtousek
Člen | 951
+
0
-

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
+
0
-

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

juzna.cz
Člen | 248
+
0
-

Ja jsem si kvuli tomu musel trosku upravit Nette a diky teto drobnosti se pak pracuje s databazi uplne krasne.

jtousek
Člen | 951
+
0
-

juzna.cz napsal(a):

Ja jsem si kvuli tomu musel trosku upravit Nette a diky teto drobnosti se pak pracuje s databazi uplne krasne.

Mám pocit že new ActiveRow se v NDB volá na více místech a ne vždy pomocí createRow takže to imho nepokryje všechny případy.

Teyras
Člen | 81
+
0
-

juzna.cz napsal(a):

Ja jsem si kvuli tomu musel trosku upravit Nette a diky teto drobnosti se pak pracuje s databazi uplne krasne.

Jo, něco takovýho by se do Nette mělo dostat pokud možno hned… Toho instancování natvrdo je v NDB až až