2 レベルの深さのモデルから特定のフィールドを取得しようとしています。コンテナーの動作を使用していますが、最下層が正しく取得されていません。
コードは次のとおりです。
$this->Review->Behaviors->attach('Containable');
$latestReviews = $this->Review->find('all', array(
'contain' => array(
'Business' => array(
'fields' => array('Business.name'),
'BusinessType' => array(
'fields' => array('BusinessType.url')
)
),
),
'fields' => array('overall'),
));
そして、それが返す配列:
array(
(int) 0 => array(
'Review' => array(
'overall' => '2'
),
'Business' => array(
'name' => 'Business Name',
'business_type_id' => '1',
'id' => '2012'
)
))
ただし、ビジネス タイプ ID を提供するのではなく、BusinessType url フィールドを返したいと考えています。
どこが間違っているのか誰にもわかりますか?これはCakePHPのドキュメントと一致していると確信しています。