Почему CakePHP 2.0 не использует мой AppController? - PullRequest
7 голосов
/ 21 июня 2011

Я только что обновился до Cakephp 2.0 alpha и сразу столкнулся с проблемой.App_controller.php в папке app / не загружается в мои контроллеры.Вместо этого контроллеры используют собственный AppController.php в CakePHP в lib / Cake / Controller / AppController.php.

Я попытался переименовать app_controller в AppController.php, но он не работает.Я попытался удалить весь файл, а затем скопировать файл lib / Cake / Controller / AppController.php, а затем отредактировать его, но не работает.

Я также попытался удалить файлы кэша.

Iпросто используйте:

class AppController extends Controller {
    public function beforeFilter() {
        die;
    }
}

И приложение не умрет.

Мой контроллер также просто:

class NewsController extends AppController {
    function beforeFilter() {
        parent::beforeFilter();
    }
    function index() {
    }
}

Так что я могу делать не так?Я также использую Windows 7 + Netbeans с Subversion для обновления проекта (если это как-то связано с этим: p).

Ответы [ 2 ]

11 голосов
/ 22 июня 2011

Много занимался поиском и не выглядел из наиболее очевидного места: Github cakephp docs: https://github.com/cakephp/docs/blob/master/en/controllers.rst. Я думал, что они были все еще 1.3 документами, но кажется, что они обновлены. Поскольку они теперь обновлены, в нем говорится, что я должен поместить старый app_controller.php в папку Controller, а верблюд - в AppController.php.

2 голосов
/ 31 июля 2011

Создать файл AppController.php в каталоге app / Controller

class AppController extends Controller {
    public $helpers = array('Html', 'Form', 'Javascript');
    public function beforeFilter() {
        die('app/Controller/AppController.php file called');
        parent::beforeFilter();

    }

}
...