我有一个'menu_items_articles'表,它与'menu_items'和'articles'有关。 'articles'表格与'tags'和'menu_items'
有HABTM关系现在我希望获得具有特定menu_tems.id及其相关“标签”的所有“文章”。
如果'文章'有4个标签,则该数组的数量是该文章的4倍。我希望1篇文章与所有标签相关。并且只有一个标签与文章
相关联这就是我所拥有的
$this->MenuItemsArticle->recursive = -1;
$options['joins'] = array(
array('table' => 'articles_tags',
'alias' => 'ArticlesTag',
'type' => 'inner',
'conditions' => array(
'ArticlesTag.article_id = MenuItemsArticle.article_id'
)
),
array('table' => 'articles',
'alias' => 'Article',
'type' => 'inner',
'conditions' => array(
'ArticlesTag.article_id = Article.id'
)
),
array('table' => 'tags',
'alias' => 'Tag',
'type' => 'inner',
'conditions' => array(
'ArticlesTag.tag_id = Tag.id'
)
)
);
$options['conditions'] = array(
'MenuItemsArticle.menu_item_id' => $menu_item
);
$options['fields'] = array('DISTINCT MenuItemsArticle.*',' Article.*','Tag.*');
$this->paginate = $options;
$result = $this->paginate('MenuItemsArticle');