2011-06-21 54 views
7

我刚刚升级到CakePHP 2.0 alpha,并立即面临一个问题。应用程序/文件夹中的app_controller.php未加载到我的控制器中。相反,控制器在lib/Cake/Controller/AppController.php中使用CakePHP自己的AppController.php。为什么CakePHP 2.0不使用我的AppController?

我已经尝试将app_controller重命名为AppController.php,但它不工作。我尝试删除整个文件,然后复制lib/Cake/Controller/AppController.php文件,然后编辑它但不工作。

我也尝试删除缓存文件。

我只是简单地使用:

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

和应用程序不会死。

我控制器也只是简单:

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

所以我可能是做错了什么?我也使用Windows 7 + Netbeans和Subversion来更新项目(如果这与它有任何关系:p)。

回答

11

做了很多搜索,并没有从最明显的地方看:Github cakephp文档:https://github.com/cakephp/docs/blob/master/en/controllers.rst。我认为他们仍然是1.3文档,但看起来它们已经更新。由于它们现在已更新,它说我应该将旧的app_controller.php放到Controller文件夹中,并将它放到AppController.php中。

+0

Gaaah你救了我!感谢您的发现。我想这就是你在修补测试版时得到的。我正用手指越过食谱。没有帮助大声笑。 – MikeMurko

2

在应用程序中创建文件AppController.php /控制器目录

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

    } 

} 
相关问题