CakePHP致命错误:找不到类'ErrorHandler'

时间:2010-11-30 11:46:59

标签: unit-testing cakephp error-handling

我通过“cake bake testsuit”生成了测试套件,并使用localhost / test.php为我的应用程序。 所以,当我尝试运行其中一个测试时,这是一个错误(否则测试是有效的):

Fatal error: Class 'ErrorHandler' not found in Z:\home\prodvigator\www\cake\libs\object.php on line 201
这个模型和控制器是由脚手架生成的,我不认为这个源中存在错误。

使用: CakePHP 1.3 最新的SimpleTest

2 个答案:

答案 0 :(得分:0)

尝试检查生成的测试以查找写在文件顶部的错误。

有时我会在模型和控制器测试中找到类似的东西。

Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/New_York' for 'EDT/-4.0/DST' instead in /projectname/cake/console/templates/default/classes/test.ctp on line 22

答案 1 :(得分:0)

就我而言,错误是:

Fatal error: Uncaught Error: Class 'ErrorHandler' not found in C:\[path]\core\cake\libs\object.php on line 211
( ! ) Error: Class 'ErrorHandler' not found in C:\[path]\core\cake\libs\object.php on line 211

在尝试访问http://localhost/user_accounts/index

时,错误发生在我身上

我已经在app \ views \ user_accounts \ index.ctp创建了视图,其中包含以下内容:

<div>
    Text from div
</div>

我在app \ controllers \ user_accounts_controller.php中创建了相应的控制器:

<?php 
    class UserAccountsController extends AppController {
        public function index() {
            // Render the view in /views/user_accounts/index.ctp
            $this->render();
        }
    }
?>

由于我没有将模型与此控制器关联,因此我错过了这个:var $uses = array();。如果错误更明确,它会节省我的时间,例如“你没有与此控制器关联的模型”。

修复是:

<?php 
    class UserAccountsController extends AppController {
        // Use this controller without a need for a corresponding Model file.
        var $uses = array();
        public function index() {
            // Render the view in /views/user_accounts/index.ctp
            $this->render();
        }
    }
?>