当';字段';在CakePHP 1.3.4中使用
(CakePHP版本1.3.4) 我在带有帐户的联系人模型和测试模型之间有以下关联:当';字段';在CakePHP 1.3.4中使用,cakephp,model,belongs-to,associations,containable,Cakephp,Model,Belongs To,Associations,Containable,(CakePHP版本1.3.4) 我在带有帐户的联系人模型和测试模型之间有以下关联: class Contact extends AppModel { var $name = 'Contact'; var $actsAs = array('Containable'); var $hasMany = array( 'Test' => array( 'className' => '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
)
));
但是,一旦引入“字段”,与帐户中断的关联性就会下降,但与测试的关联性仍然很好:
$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'
)
));
其他人似乎也有这个问题吗?是的,我也有同样的问题。我有一个员工是负责处理关系的
$this->dataout = $this->Employee->find('all',array(
'contain' => array('Address.full_name'),
'fields' => array('Employee.id','Employee.address_id')
));
(其中地址。全名是一个虚拟字段)。如果没有提供的fieldlist,它就可以工作。
也许会提交一份bug报告