我正在使用CakePHP 2.2.0,我有这个AppController:
<?php
App::uses('Controller', 'Controller');
class AppController extends Controller {
public function beforeRender(){
debug('test');
}
}
?>
和这个简单的自定义控制器:
<?php
App::uses('AppController', 'Controller');
class ProvidersController extends AppController {
public function index(){
debug('index');
}
}
?>
我真的不明白为什么appController的beforeRender被调用两次...当URL到达ProvidersController的index()方法时,我在调试模式中看到两个“测试”字符串。
有人可以解释一下吗?
答案 0 :(得分:2)
当我在代码中的其他地方有一个损坏的src时,我已经看到过这种行为。例如,如果找不到javascript文件,则会启动cake,导致逻辑再次运行。这可能解释了为什么你会看到像beforeRender()运行两次的方法。