当我有一个需要在每个页面上执行的功能和将一个变量分配给默认布局时,我应该在哪里添加该功能?
我在考虑AppController,我在其中添加了一个私有函数,并在beforeFilter函数中调用了这个私有函数,然后我将它分配给一个视图变量,但这是正确的方法吗?
我的意思的小例子:
<?php
App::uses('Controller', 'Controller');
class AppController extends Controller {
public function beforeFilter(){
$this->set('something', $this->someFunction());
}
private function someFunction(){
return 'something';
}
}
?>
答案 0 :(得分:1)
你做得对,你的榜样看起来不错。 beforeFilter()或beforeRender()是一个很好的地方。只是不要忘记缓存您的数据,除非每页都有变化。