我的控制器中有以下内容:
var $cacheAction = array(
'view/' => 432000,
'pricelist/'=>'100000',
'latest/' => '100000');也就是说,将视图缓存5天。我还在core.php中启用了缓存,并在我的控制器中包含了缓存助手。
在tmp/ cache /views/中正确创建了缓存文件,但它们似乎不会持续5天。如果我创建了一个文件,其中列出了在过去3-4分钟内创建的所有文件。
我做错了什么?缓存操作是否需要另一种语法?
谢谢
发布于 2010-07-31 02:25:39
您的操作是否使用频繁更改的模型?从Cookbook
请记住,如果缓存视图中使用的模型被修改,
将清除缓存视图,这一点很重要。例如,如果缓存视图使用来自Post模型的数据,并且对Post进行了INSERT、UPDATE或DELETE查询,则将清除该视图的缓存,并在下一次请求时生成新内容。
发布于 2010-11-29 21:40:44
我的模型是:
events hasMany图像
Basket belongsTo events hasMany BasketImages
BasketImages belongsTo镜像belongsTo篮子
所以我缓存了页面的events/view/id。在这个视图中,我有:
<?php if (($c=count($basketImages))>0) echo $c; ?>然后是一些照片和一个进行ajax调用的按钮,比如: /baskets/add/imageID
在篮子/添加中,如果用户没有篮子,它会创建一个篮子,它还会用当前的imageID创建一个BasketImage记录。
所以我的问题是,我的页面是否属于这样的类别:
请记住,如果缓存视图中使用的模型被修改,
将清除缓存视图,这一点很重要。(食谱)
添加篮子和basketImage会使事件/视图缓存过期吗?我可以使用:
<cake:nocache> <?php if (($c=count($basketImages))>0) echo $c;?><cake:nocache> https://stackoverflow.com/questions/3306374
复制相似问题