我正在使用Cakephp 2.3,我想在我的几个控制器中执行许多常见的计算。所以我在我的appcontroller中编写这些函数,并缓存了一些数据.. 但是我的appController会变得很胖......所以我创建了一些组件来执行这些操作..我不知道我的方法是对还是不...?请建议..
我想在我的组件中使用缓存,我尝试了这段代码。但没有任何缓存..
public $helpers =array('Cache');
和
$result = Cache::read('fm_data', 'long');
if (!$result) {
$result =
$this->TFmStation->find('all',array('contain'=>array('TLocation',
'TLanguage','TMediaOrg','TContactPerson',
'TAddress','TFmProgram'=>array('TTargetGroup'))));
Cache::write('fm_data', $result, 'long');
}
return $result;
答案 0 :(得分:1)
模型TFmStation
是拥有上述逻辑的最佳位置。组件用于通用功能,如UploadComponent,EmailComponent,RecaptchaComponent等。如果您的逻辑部分与模型有关,那么它应该进入该模型。
可以通过AppController.php以与调用Component相似的方式调用Model。