我正在嘗試在分類列表中查找用戶的雜貨商品。這些協會是分類hasMany Item hasMany User through Grocery。我正在使用可容忍行爲,並沒有過濾掉所有其他雜貨店。它基本上返回每個項目。CakePHP包含的條件不限制結果?
我的控制器功能:所返回
function showlist() {
$categories = $this->Category->find('all', array(
'contain' => array(
'Item' => array(
'Grocery' => array(
'conditions' => array(
'Grocery.user_id =' => $this->Auth->user('id')
)
)
)
)
));
陣:
Array
(
[0] => Array
(
[Category] => Array
(
[id] => 10
[parent_id] =>
[name] => Dairy
[lft] => 1
[rght] => 6
)
[Item] => Array
(
)
)
[1] => Array
(
[Category] => Array
(
[id] => 11
[parent_id] => 10
[name] => Milk
[lft] => 2
[rght] => 3
)
**[Item] => Array
(
)**
)
[2] => Array
(
[Category] => Array
(
[id] => 12
[parent_id] => 10
[name] => Cheese
[lft] => 4
[rght] => 5
)
[Item] => Array
(
)
)
[3] => Array
我不想回到那個沒有雜貨店(ItemUser)低於他們的任何項目陣列。
這個工程,但現在它只顯示平坦。我需要它顯示該嵌套數組中的一個類別的所有項目。
它顯示:
Array
(
[0] => Array
(
[Category] => Array **<--This could be the same category as**
(...)
[Item] => Array
(...)
[Grocery] => Array
(...)
)
[1] => Array
(
[Category] => Array **<--This**
(...)
[Item] => Array
(...)
[Grocery] => Array
(...)
)
[2]...
,我需要它是:
Array
(
[0] => Array
(
[Category] => Array
(...
[Item] => Array
(...)
[Item] => Array
(...)
)
)
[1] => Array
(
[Category] => Array
(...)
[Item] => Array
(...)
)
[2]...
甚至不真正需要的雜貨店陣列,就必須通他們搜索的標準。
這工作,但我仍然有一些問題。我在上面的編輯中注意到了它們。 – Chris
這將是另一個問題,而不是這個問題的補充。 「我的聯接以奇怪格式返回數據」或其他內容。 – Dave
您是否嘗試過使用http://book.cakephp.org/2.0/en/core-utility-libraries/hash.html重新格式化數據? –