Propojení více tabulek v latte

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

Chtěl jsem se zeptat jestli je vhodné propojovat více tabulek v latte šabloně, nebo si to nejdříve připravit v modelu?
Pokud bych je propojoval až v latte musím všechny tabulky předat v presenteru?
Mám tyto tři tabulky:
uzivatele(id, jmeno, heslo, email…)
role(id,opravneni)
uzivatelske_role(id,uzivatel_id, role_id)
V modelu to vypadá takto:

function getUser()
	{
		return $this->database->table('uzivatele');

	}

      function getRole()
	{
		return $this->database->table('role');

	}
         function getUzivRole()
	{
		return $this->database->table('uzivatelske_role');

	}

V presenteru to šabloně předávám takto, ale to nevím jestli je vůbec třeba předávat všechny:

$this->template->uzivatele=$this->context->userModel->getUser();
	  	$this->template->role = $this->context->userModel->getRole();
		$this->template->uzivatelskeRole = $this->context->userModel->getUzivRole();

Poradí někdo prosím jak v šabloně vypsat všechny uživatele i s jeho oprávněníma…Platí, že každý uživatel může mít více oprávnění…A jedno oprávnění může mít více uživatelů…Nevadí mně, když se každý uživatel vypíše tolikrát jako má oprávnění…Já na to náko nemůžu přijít děkuju

Miky0007
Člen | 73
+
0
-

Takto vypisuju z jedný tabulky:

<table>

     {foreach $uzivatele as $user}
<tr><td>{$user->nick}&nbsp;&nbsp;&nbsp;</td><td>{$user->email}</td>

<td >&nbsp;&nbsp;<a n:href="Sign:smaz $user->id">Smazat</a></td></tr> </tr>

        {/foreach}
</table>
Miky0007
Člen | 73
+
0
-

Tak už jsem to asi rozchodil..

<table>

     {foreach $uzivatele as $user}
<tr><td>{$user->nick}&nbsp;&nbsp;&nbsp;</td><td>{$user->email}</td>

<td>{foreach $user->related('uzivatelske_role') as $role}
        {$role->role->opravněni}{sep}, {/sep}
    {/foreach}</td>

<td >&nbsp;&nbsp;<a n:href="Sign:smaz $user->id">Smazat</a></td></tr> </tr>

        {/foreach}
</table>

Nicméně bych stejně rád věděl jestli je dobrý to takto dělat…