CakePHP找到hasMany关联模型

时间:2014-01-17 19:36:26

标签: cakephp cakephp-2.0

我的Item模型belongsTo Category,{1}} Category hasMany。{/ p> 来自Item

我想获取该类别的所有CategoriesController

我尝试了这个,但它不起作用:

Item

2 个答案:

答案 0 :(得分:1)

如果使用相应的$hasMany$belongsTo正确设置了模型,默认情况下获取类别就足够了:

$category = $this->Category->findById($id);

项目将自动包含在$category数组中。您可以使用debug()功能进行检查:

debug($category);

另请注意,您可以使用非常有用的Containable行为准确过滤出find()时要检索的链接模型。

答案 1 :(得分:1)

我不是recursive > -1的粉丝所以我提出另一种方式。

$items = $this->Category->find('all', array('contain'=>'Item',
                                                  'recursive'=>-1));
$this->set('items',$items);

或最简单的

$items = $this->Category->Item->find('all', 
                                     array('conditions'=>array('category_id'=>$id)));

你的问题不是指定“全部”而是没有给出条件来填补。