我嘗試以下操作以獲取屬於MenuItem 6的文章,並且文章content_type爲'blog'。它確實可以找到content_type='blog'
的所有文章。但我只希望它返回文章,如果它屬於Menuitem 7.現在它返回一個空值爲MenuItem,當不是7時。Cakephp查找多個模型上的所有查詢
我該如何做到它只會從MenuItem 7加載文章?
菜單項與第一個HABTM關係
代碼:
$d=$this->Article->find('all' , array('contain' => array(
'MenuItem' => array(
'conditions' => array(
'MenuItem.id ' => 7,
),
'fields'=>'id'
),
'Tag'=>array(
'conditions'=>array(
'Tag.name'=>'tag1'
),
'fields'=>'name'
)
),
'conditions'=>array('Article.content_type' => 'blog'),
'fields'=>array('id','content_type'),
'recursive'=>1
));
debug($d);
陣列:
array(
(int) 10 => array(
'Article' => array(
'id' => '15',
'content_type' => 'blog'
),
'Tag' => array(),
'MenuItem' => array()
),
(int) 11 => array(
'Article' => array(
'id' => '16',
'content_type' => 'blog'
),
'Tag' => array(),
'MenuItem' => array(
(int) 0 => array(
'id' => '7',
'MenuItemsArticle' => array(
'id' => '18',
'title' => '',
'article_id' => '16',
'menu_item_id' => '7'
)
)
)
)
)
好問題。我記得一次解決這個問題,但代碼不好。希望有人能給出一個很好的答案。 – 2012-08-16 12:53:43
它需要一個人,所以結果可以分頁 – waterschaats 2012-08-16 13:12:22