我使用$this->output->cache(n)
来缓存网页,但我无法弄清楚它是如何工作的。我没有在system/cache
文件夹下找到任何缓存文件...并且在我编辑页面并再次显示它之后,内容改变,所以看起来这个页面并没有真正被缓存。任何人都可以提供帮助吗? (我用菲尔的模板LIB) 我的代码:codeigniter输出缓存不起作用?
function show(){
$this->output->cache(5);
$this->load->model('page_model');
$var = $this->uri->segment(3, 0); //get About page
$row = $this->page_model->getPage($var);
$this->template->title('about')
->set_layout('default')
->set_partial('styles', 'css')
->set('data', $row->body)
->build('about');
}
谢谢!
+1也许没有使用“原生”的观点是一个问题? – Philip 2012-04-10 15:59:37
嗨科林和菲利普,谢谢你的回复!但是还有其他方法可以使用这种缓存方法吗?因为它似乎无法摆脱模板,我不得不使用它来构建网站......另外,如何更改权限?我无法在系统下找到缓存文件夹,但在应用程序下有一个缓存文件夹...对不起,我是CI新手 – Mario 2012-04-10 16:14:11
@Mario:关于你最后一个问题,那是我的错。该目录确实是'application/cache'。关于如何让CI的缓存方法在没有CI视图的情况下工作,你必须看一下[Output class](http://codeigniter.com/user_guide/libraries/output.html)的“底层”,找到了解它的工作原理,并根据需要进行扩展。 – 2012-04-10 16:28:55