(CakePHP 版本 1.3.4)
我在 Contact 模型与 Account 和 Test 模型之间有以下关联:
class Contact extends AppModel {
var $name = 'Contact';
var $actsAs = array('Containable');
var $hasMany = array(
'Test' => array(
'className' => 'Test',
'foreignKey' => 'contact_id',
'dependent' => false
)
);
var $belongsTo = array(
'Account' => array(
'className' => 'Account',
'foreignKey' => 'account_id',
'dependent' => false
)
);
}
以下查询可以正常工作:
$contact = $this->Contact->find('first', array(
'contain' => array(
'Account', 'Test'
),
'conditions' => array(
'Contact.id' => $contactId
)
));
但是,一旦引入“字段”,与 Account 关联的 belongsTo 关联就会中断,但与 Test 的 hasMany 关联仍然很好:
$contact = $this->Contact->find('first', array(
'contain' => array(
'Account', 'Test'
),
'conditions' => array(
'Contact.id' => $contactId
),
'fields' => array(
'Contact.id', 'Contact.first_name', 'Contact.last_name', 'Contact.account_id'
)
));
其他人似乎有这个问题吗?