読者です 読者をやめる 読者になる 読者になる

ウェブサービスを作っています。

Model::cacheQueries

PHP CakePHP

CakePHP は同一クエリの場合、デフォルトでは2回目以降が実行されないようです。
まあ、ふつうはこれで問題ないのですが、たとえば

$this->Hoge->find(array('del_flg' => 'false'), null, 'rand()');

のような文は、何度も呼び出して、違う結果を得たい場合があります。
ところが、この文で実行されるクエリは常に同じなので、2回目以降は実行されません。
解決策は、

$this->Hoge->cacheQueries = false;

のように、Model の cacheQueries プロパティを false にしてやることです。
API リファレンスにこっそり書いてありました。