hasOne是cakephp find()的空条件

hasOne是cakephp find()的空条件,php,cakephp,cakephp-1.3,Php,Cakephp,Cakephp 1.3,我正在处理一些非常糟糕的继承代码,有一个查询从表中提取事件。事件模型有$hasOne=array('blocked')-我的目标是只返回所有在阻塞表中没有条目的事件。尽管设置了$hasOne,但cake仍然单独查询blocked events表,因此我无法将字段用作条件 查询本身已经在'contains'=>…中,因此使用'joins'=>…手动强制联接不起作用 已更新:以下是现有的查找查询: $params = array( 'conditions' => array(

我正在处理一些非常糟糕的继承代码,有一个查询从表中提取事件。事件模型有
$hasOne=array('blocked')-我的目标是只返回所有在阻塞表中没有条目的事件。尽管设置了$hasOne,但cake仍然单独查询blocked events表,因此我无法将字段用作条件

查询本身已经在
'contains'=>…
中,因此使用
'joins'=>…
手动强制联接不起作用

已更新:以下是现有的查找查询:

$params = array(
    'conditions' => array(
        'Restaurant.id' => $id,
        'Restaurant.inactive' => 0, 'Restaurant.deleted' => 0,
        'Restaurant.bkwindow <=' => (strtotime($criteria['Restaurant']['date']) - strtotime("today"))/86400
    ),
    'fields' => array(),
    'contain' => array(
        'Experience' => array(
            'Experience_blocking'
        )
    )
);
$params=array(
“条件”=>数组(
'Restaurant.id'=>$id,
'Restaurant.inactive'=>0',Restaurant.deleted'=>0,

'Restaurant.bkwindow由于您没有显示太多的代码,我将尝试猜测您的问题是什么,并详细说明。您无法使用可包含的行为来做您想做的事情

有关更详细的答案,请参阅