Iterace v iteraci v template → jak nejlepe ziskavat data zavisejici na polozkach uvnitr iterace

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

Ahoj, dam jednoduchy priklad,

mam jednoduche tabulky:

<?php
KATEGORIE
---------
id_kategorie, nazev_kategorie


CLANKY
------
id_clanku, id_kategorie, nazev_clanku
?>

do sablony si predam vypis kategorii a vypisuji:

<?php
<ul>
{foreach $items as $item}
	<li>
		<a href="#">{$item->nazev}</a>
		<ul>
			// iterace a vypis clanku spadajici pod kategorii
			Sem je potreba dostat vysledek z tabulky clanky, ktery zavisi na id_kategorie
		</ul>
	</li>
{/foreach}
</ul>
?>

jak tento problem resite?

Filip Procházka
Moderator | 4668
+
0
-

Pořádně si projdi dokumentaci k téhle hračce: http://www.notorm.com/ třeba tě to inspiruje.

Ja
Člen | 260
+
0
-

bude to mozne i s dibi?

medvedobijec
Člen | 11
+
0
-

U Dibi se podívej na fetchAssoc :)

OK3
Člen | 91
+
0
-

S dibi si to budeš muset předpřipravit v prezenteru:

<?php
$categories = dibi::... 	// nebo zavolat model
$articles = dibi::...
$items = array();
foreach($articles as $atricle) {
	$items[$article->id_kategorie][] = $article;
}

$this->template->categories = $categories;
$this->template->articles = $items;
?>

V šabloně:

<?php
<ul>
{foreach $categories as $category}
        <li>
                <a href="#">{$category->nazev}</a>
                <ul>
                        // iterace a vypis clanku spadajici pod kategorii
			{foreach $articles[$category->id_kategorie] as $article}
			<li>{$article->nazev_clanku}</li>
			{/foreach}
                </ul>
        </li>
{/foreach}
</ul>
?>