1

私は 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 が 2 回呼び出される理由がよくわかりません... URL が ProvidersController の index() メソッドに到達すると、デバッグ モードで 2 つの「テスト」文字列が表示されます。

誰かがそれを説明できますか?

4

1 に答える 1

2

コード内のどこかで壊れた src があるときに、この動作を見てきました。たとえば、javascript ファイルが見つからない場合、cake が起動し、ロジックが再度実行されます。beforeRender() のようなメソッドが 2 回実行される理由は、これで説明できるかもしれません。

于 2012-12-14T15:40:58.333 に答える