CakePHP - 快速获取/控制器/动作路径的方法?

Bad*_*sie 10 php cakephp cakephp-1.2

是否有一个Controller属性,允许我/controller/action从URL中获取而不需要任何其他参数?

目前我不得不加入$this->name . '/' . $this->action.

dec*_*eze 16

您不希望构造字符串/users/login,您需要与用户控制器的登录操作相对应的URL(例如).这不一定是相同的/users/login,你不应该硬编码!

要获取将导致控制器操作的URL,请使用反向路由:

Router::url(array('controller' => 'users', 'action' => 'login'));
//or
Router::url(array('controller' => $this->name, 'action' => $this->action));
Run Code Online (Sandbox Code Playgroud)

是的,那甚至更长,但这是正确的方法.如果有一天您决定要使用/login/members/entrance不使用登录URL /users/login,则只需要在routes.php不重写所有硬编码链接的情况下定义适当的路径.