";动作未在AppController中定义”;使用默认路由访问其他控制器时出错


"Action not defined in AppController" error when accessing a different controller with default route

我是CakePHP的新手,所以我觉得我可能只是在做一些愚蠢的事情,但我遇到了一个问题:

根据教程,我在cakehp/app/controller/UsersController.php中创建了一个名为UsersController的控制器,并在cakepp/app/model/User.php中创建了与数据库中的用户表相对应的模型。(还创建了一个视图)据我所知,默认的路径应该是:

mysite.com/cakehp/app/users

然而,当我转到该URL时,我会得到错误

操作用户未在控制器AppController中定义

如果我将其添加到AppController…:

public function users(){
    $this->redirect(array('controller' => 'users', 'action' => 'index'));
}

它会进入正确的控制器,一切都很顺利,但我知道这不是它应该的工作方式。你知道我在这里做错了什么吗?

对于您的示例,它应该只是www.mysite.com/users。这将在用户控制器中查找索引操作。

"正常"url是www.mysite.com/controller/action/variables

您不需要在AppController中定义任何内容(对于本例)。