Filtrování článku dle tagu

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

Ahoj,

mám metodu, která mi tahá všechny články.
Pokud je vyplněné id tagu, tak vybere pouze články s tímto tagem.

Kód:

<?php
public function getArticles($tagIdFilter) {
        $res = $this->database->table("articles");

        if ($tagIdFilter) {
            $res->where('tags.tag_id', $tagIdFilter);
        }

        return $res->fetchAll();
    }
?>

Pokud ale zadám nějaký tag id, tak to spadne s chybou:
No reference found for $articles->articles_tags

Cizí klíče mám správně, jelikož v šabloně si normálně ve výpisu všech článků, bez tagu, projdu až na konkrétní tag.

<?php
{foreach $article->related('articles_tags', 'article_id') as $tag}
   <span class="tag">{$tag->tag->title}</span>
{/foreach}
?>

Díky za pomoc.

Editoval tttpapi (30. 10. 2014 15:03)

Oli
Člen | 1215
+
+1
-

Typnul bych si něco takového pokud to máš m:n

if ($tagIdFilter) {
	$res->where(':articles_tags.tag_id', $tagIdFilter);
}
tttpapi
Člen | 100
+
0
-

Jo, to bylo ono.
Se z těch dvojteček osypu brzo…