我有一个名为的模型,User
它有一个名为full_name
. 当我在 find() 查询中访问我的模型User
时,我可以在我的虚拟字段上设置条件,而不会出现这样的问题:
$user = $this->User->find('first', array(
'recursive' => -1,
'conditions' => array(
'User.full_name' => 'Bruce Thomas'
)
));
上面的查询将成功地为我返回名为 Bruce Thomas 的用户的数据。但是,当我尝试通过像这样的可包含行为通过另一个模型使用我的模型用户时,就会出现问题:
$user = $this->MyOtherModel->find('first', array(
'contain' => array('User'),
'conditions' => array(
'MyOtherModel.id' => $my_other_model_id
'User.full_name' => 'Bruce Thomas'
)
));
(上面的这个例子假设与我的模型MyOtherModel
有关系)belongsTo
MyOtherModel
上面的查询给了我以下错误:
警告 (512):SQL 错误:1054:“on 子句”中的未知列“User.full_name”[CORE\cake\libs\model\datasources\dbo_source.php,第 681 行]
请帮助我如何做到这一点?谢谢