以下に示すようにモデルで検索を行っていますが、生成される SQL が間違っているため、誤った結果が得られます。
$bookings = $this->Booking->find('all', array(
'conditions' => array(
'Booking.created BETWEEN ? AND ?' => array(
date('Y-m-d H:i:s', strtotime('-24 hours')),
date('Y-m-d H:i:s', strtotime('-12 hours'))
),
'OR' => array(
'Booking.payment_status' => 3,
'Booking.payment_status' => 2
)
)
));
この検索によって生成される WHERE 条件は (cake debugkit で示されているように)
WHERE `Booking`.`created` BETWEEN '2013-03-27 11:01:57' AND '2013-03-27 23:01:57' AND `Booking`.`payment_status` = 2
そして、私が作成しようとしているwhere条件は
WHERE `Booking`.`created` BETWEEN '2013-03-27 11:01:57' AND '2013-03-27 23:01:57' AND (`Booking`.`payment_status` = 2 OR `Booking`.`payment_status` = 3)
ここで私が間違っていることについてのアイデア。迅速なヘルプをいただければ幸いです。ありがとう!