我有两个表被设置为使用树行为、制造商和类别。
产品只能属于一个类别并且只能属于一个制造商,但是某些制造商(子)归其他制造商(父)所有,同样某些类别(子)是另一个(父)的子类别。
我想做以下事情:
给定类别 id(父),查找子类别中的所有产品给定制造商 id(父),查找子制造商中的所有产品
我尝试了以下(在产品控制器中):
$conditions['Product.category_id'] = $this->Product->Category->children($id,false,'id');
$this->paginate = array(
'conditions' => $conditions,
'limit' => 21
);
$products = $this->paginate('Product');
$this->set(compact('products'));
但它给了我这个:
WHERE `Product`.`category_id` IN (Array, Array, Array, Array, Array, Array)
如果我做一个 print_r 我可以看到它正在获取我需要的信息(见下文),但我怎样才能得到它,有没有更好的方法来做到这一点?
Array
(
[Product.category_id] => Array
(
[0] => Array
(
[Category] => Array
(
[id] => 11
)
)
[1] => Array
(
[Category] => Array
(
[id] => 12
)
)
[2] => Array
(
[Category] => Array
(
[id] => 23
)
)
[3] => Array
(
[Category] => Array
(
[id] => 24
)
)
[4] => Array
(
[Category] => Array
(
[id] => 25
)
)
[5] => Array
(
[Category] => Array
(
[id] => 26
)
)
)
)