@Dave: 私の OrdersController にはコードがあります:
$products = $this->Order->find('first', array(
'contain' => array (
'Customer',
'OrderItem' => array(
'Item'
)
)
));
find() クエリの後、次の結果が得られます (配列 'Order' と 'Customer' を省略します - 今は重要ではありません):
array(
'OrderItem' => array(
(int) 0 => array(
'order_id' => '1',
'item_id' => '4',
'quantity' => '2',
'Item' => array()
),
(int) 1 => array(
'order_id' => '1',
'item_id' => '6',
'quantity' => '1',
'Item' => array()
),
(int) 2 => array(
'order_id' => '1',
'item_id' => '7',
'quantity' => '1',
'Item' => array()
),
(int) 3 => array(
'order_id' => '1',
'item_id' => '8',
'quantity' => '1',
'Item' => array()
)
)
)
1.では、どうすればすべての「製品」を入手できますか? 私はこれに似たものから始めましたが、動的変数である ['0']...['1]... を書かなければならないので、それが悪いことを知っています
<?php echo h($products['OrderItem']['0']['item_id']); ?>
2.ご覧の通り
'アイテム' => 配列()
nullです;-)だから、例えばItemテーブル/モデルからItemの名前を取得することはできません