CakePHP: 如何禁用Model的Cache

如果你之前查询了某个表格,并且默认是启用Cache的,那么查询结果会被缓存在cache/queries中

所以如过你创建了新的记录但是没有清除Cache,再查询时是找不到新的记录的.

Cache很强大,也很容易会引起麻烦,上述就是一个例子.


在Cake中,你可以通过设置cacheQueries为false来禁用查询缓存,这个对于find是起作用的.

但是你执行query的时候,并不检查这个变量.

对于query,可以设置第二个参数为false来直接读取数据库,如下所示:


$query = "SELECT id FROM `t_cities` WHERE `country_id` =".$country_id.")";
$tempresults = $this->query($query, false);


regards,

iefreer




你可能感兴趣的:(数据库,cache,query,cakephp)