Php 为什么可以';我不能从扩展AppController的类访问CakereRequest对象吗?

Php 为什么可以';我不能从扩展AppController的类访问CakereRequest对象吗?,php,cakephp,Php,Cakephp,为什么cakePHP抱怨$request未定义?我一直在关注他们网站上关于如何创建博客的教程(框架的hello工作),我一直在修复教程代码中遇到的各种错误(我认为教程有点过时),但这里有一个我一直无法理解的错误。看看api文档,它说控制器有一个$request属性。我的PostsController扩展了AppController,AppController扩展了Controller,因此它应该具有$requests属性,但实际上没有,甚至根据print\r的说法也没有 以下是我的代码(直接来自

为什么cakePHP抱怨$request未定义?我一直在关注他们网站上关于如何创建博客的教程(框架的hello工作),我一直在修复教程代码中遇到的各种错误(我认为教程有点过时),但这里有一个我一直无法理解的错误。看看api文档,它说控制器有一个$request属性。我的PostsController扩展了AppController,AppController扩展了Controller,因此它应该具有$requests属性,但实际上没有,甚至根据print\r的说法也没有

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

以下是错误页面:

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

感谢您提供的帮助。

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


如果您正在学习的教程提到CakeRequest类,那么您正在学习Cake 2.x教程…

我下载了2.1.3。是否有其他方法可以查看您安装的版本?出于某种原因,我使用的脚手架工具是1.3。谢谢你的帮助。
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