我一直使用此代碼戰鬥:CakePHP的返回空但SQL查詢有結果
function getNextActionFObyBalance($when) {
$theQuery = $this->find('first', array(
'fields' => array(
'Contract.id',
'Contract.start_balance'
),
'conditions' => array(
'AND' => array(
'Status.next_action_by' => 'frontoffice',
'Status.status_type' => 'active',
'Status.visibility' => 'frontoffice',
'OR' => array(
'Contract.next_action_on' => null,
'Contract.next_action_on <=' => $when
)
)),
'order' => 'Contract.start_balance DESC',
'recursive' => 0,
));
return $theQuery;
}
我已經啓用日誌記錄在此MySQL服務器上是服務器表明CakePHP的請求:
SELECT `Contract`.`id`, `Contract`.`start_balance` FROM `contracts` AS `Contract` LEFT JOIN `statuses` AS `Status` ON (`Contract`.`status_id` = `Status`.`id`) LEFT JOIN `users` AS `User` ON (`Contract`.`user_id` = `User`.`id`) WHERE ((`Status`.`next_action_by` = 'frontoffice') AND (`Status`.`status_type` = 'active') AND (`Status`.`visibility` = 'frontoffice') AND (((`Contract`.`next_action_on` IS NULL) OR (`Contract`.`next_action_on` <= '2010-09-13 10:13:04')))) ORDER BY `Contract`.`start_balance` DESC LIMIT 1
如果我在phpmyadmin工具中使用它,我會得到我期待1個記錄有兩個字段的確切數據。 但是 CakePHP只是給了我一個空的結果集。 任何人都可以啓發我嗎?
PS的代碼工作,但我可以找出什麼改變!
在任何模型的afterFind方法中您有任何東西嗎? AppModel還是當前模型? – 2010-09-13 16:36:32