我对CakePHP相当陌生,在构建一个使用Auth组件的站点。有几次我试图做的事情与此组件已导致错误未定义的方法stdClass :: user()使用CakePHP时出错Auth
Fatal error: Call to undefined method stdClass::user() in /ftphome/site/app/controllers/users_controller.php on line 395
在这种情况下,它指的是该生产线是
$this->User->read(null, $this->Auth->user('id'));
当我恢复了这个错误不会消失代码回到错误发生之前,我似乎只能通过删除服务器上的某些文件来清除它(我不确定哪些文件,当我尝试删除tmp
目录中的所有文件时,错误仍然存在所以我删除了整个网站,并从最新的svn revesion中恢复。
在这种特殊情况下,我想我通过将以下代码app_controller
class AppController extends Controller {
function beforeRender() {
$this->set('test', $this->Auth->user());
}
}
先前的时候,我试图通过更新验证导致问题复制造成的错误更新数据库中的用户之后的用户详细信息。
我可以看到我以某种方式从Auth对象中删除用户对象,但我无法理解为什么我需要删除站点中的文件以取回它或上面的代码如何删除它 - 任何帮助将是非常感激。
编辑
它看起来像我上面提到的情况下,问题是app_controller.php
文件,我已经复制到我的app/controllers
目录。只要有一个空的类声明的文件导致这个错误 - 任何人都可以提供进一步的洞察力?
进一步编辑
我已经意识到我已经有点傻了,问题就由我把app_controller.php
在/app/controllers/app_controller.php
当/app/app_controller.php
已经有一个引起的 - 感谢输入尽管安迪,它有助于我更多地了解发生的事情。
正常抛出?你能提供任何引文吗?似乎这将是PHP,mod_php,Apache,APC或类似的东西中的错误。 – 2013-07-09 18:18:55