0

为什么 cakePHP 抱怨 $request 未定义?我正在关注他们在他们的网站上发布的如何制作博客的教程(框架的你好工作),并且我一直在修复我在教程代码中遇到的各种错误(我认为教程有点过时日期)但这是我无法理解的一个。查看 api 文档,它说 Controller 有一个 $request 属性。我的 PostsController 扩展了扩展 Controller 的 AppController,因此它具有 $requests 属性是有道理的,但它没有,甚至根据 print_r 也没有。

这是我的代码(直接来自教程):

class PostsController extends AppController {
    public $helpers = array('Html', 'Form', 'Session');
    public $components = array('Session');
    ...

    public function add() {
        if ($this->request->is('post')) {
            ...
        }
    }
}

这是错误页面:

Notice (8): Undefined property: PostsController::$request [APP/controllers/posts_controller.php, line 16]
Code

public function add() {
if ($this->request->is('post')) {

PostsController::add() - APP/controllers/posts_controller.php, line 16
Object::dispatchMethod() - CORE/cake/libs/object.php, line 116
Dispatcher::_invoke() - CORE/cake/dispatcher.php, line 227
Dispatcher::dispatch() - CORE/cake/dispatcher.php, line 194
[main] - APP/webroot/index.php, line 88
Fatal error: Call to a member function is() on a non-object in shared/THS/test/www/MyCake/app/controllers/posts_controller.php on line 16

感谢您的任何帮助,您可以提供。

4

1 回答 1

1

根据您在错误中看到的文件路径,您尚未安装 Cake 2.x,但可能是 Cake 1.3。

如果您正在关注的教程提到了 CakeRequest 类,那么您正在关注 Cake 2.x 教程......

于 2012-07-01T21:38:46.263 回答