【发布时间】:2012-03-07 07:26:16
【问题描述】:
我在远程主机上部署了我的应用程序,一切正常。但是当我尝试在 localhost 上测试我的代码时,它给了我以下错误,而主机上的代码没有任何更改:
Fatal error: Class 'AppHelper' not found in [path]
我使用 CakePHP 2.1 和 MySQL 作为我的默认数据源。
我像连接到远程数据库一样连接到本地数据库(带有身份验证更改):
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'root',
'password' => '',
'database' => 'database',
'prefix' => '',
'encoding' => 'utf8',
);
为什么这在我的本地主机上不起作用?谢谢
【问题讨论】:
-
有可能你有一个不在控制器 $helpers 数组中的助手?或者帮助者的路线错误
-
我的助手数组看起来像
public $helpers = array('Html', 'Form', 'Session', 'Js', 'Text', 'Time');。无论如何,问题是在我的远程主机上相同的代码可以正常工作。 -
然后验证您的路线...远程!=本地主机...这是另一个环境:) 无论如何..有一个在 AppHelper 中扩展的类? (在助手中验证)如果有,请在助手中进行更改。从理论上讲,这个错误是由两个问题引起的,路径错误或助手文件夹中缺少助手
-
我没有任何自定义助手。我添加的唯一路线是
Router::parseExtensions('json');,因为我需要 JsonView。会不会是这个问题? -
想通了。我的应用程序中缺少 AppHelper 文件。我认为它包含在蛋糕核心中。感谢您的所有帮助。
标签: mysql cakephp localhost cakephp-2.1