私は自分のbootstrap.phpファイルにキャッシュ構成を持っています
Cache::config('long', array(
'engine' => 'File',
'duration' => '+1 week',
'probability'=> 100,
'mask' => 0666,
'path' => CACHE . 'long' . DS,
));
設定が編集されたときにキャッシュをクリアしようとしています。以下は私のadmin_edit関数です
public function admin_edit($id = null) {
if (!$this->Setting->exists($id)) {
throw new NotFoundException(__('Invalid setting'));
}
if ($this->request->is('post') || $this->request->is('put')) {
if ($this->Setting->save($this->request->data)) {
$this->Session->setFlash(__('The setting has been saved'));
$this->redirect(array('action'=> 'index'));
Cache::clear(false,'long');
Cache::gc();
}else {
$this->Session->setFlash(__('The setting could not be saved. Please, try again.'));
}
}else {
$options = array('conditions' => array('Setting.' . $this->Setting->primaryKey=> $id));
$this->request->data = $this->Setting->find('first', $options);
}
}
ただし、Cache::clear(false,'long')
機能せず、キャッシュがクリアされません。何がうまくいかないのかわからない。数日間立ち往生しています!