我正在处理一些非常糟糕的继承代码,并且有一个查询从表中提取事件。事件模型具有$hasOne = array('blocked');
- 我的目标是仅返回阻塞表中没有条目的所有事件。尽管设置了$ hasOne,但仍然会分别查询阻塞事件表,因此我不能将这些字段用作条件。
查询本身已经在'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'
)
)
);
我需要Experience表只返回在Experience_blocking表中没有条目的结果。经验是使用$ hasOne of Experience_blocking设置的,但它永远不会有效,它总是将其视为可包容的。