1

我正在使用 CakePHP 创建一个网站。它有用户注册和登录系统。

所以起初我有一个controller调用HomeController它具有三种方法

1)index();

2)login();

3)register();

默认index()方法将执行。

我有以下代码来调用其他两种方法。

<? php

echo $this->Html->link('Login',array('controller'=>'Home','action'=>'login'),array('escape'=>FALSE));

echo $this->Html->link('Register',array('controller'=>'Home','action'=>'register'),array('escape'=>FALSE));

?>

所以现在当我点击上面的链接(loginregister)时,它会调用适当的方法,url就像

www.example.com/home/loginwww.example.com/home/register

现在我想从 url 中删除控制器名称,因为该方法在同一个控制器中。

所以url应该看起来像

www.example.com/loginwww.example.com/register

是否可以??请帮忙..

4

2 回答 2

5

在 app\Config\routes.php 添加以下行

Router::connect('/login', array('controller' => 'home', 'action' => 'login'));
Router::connect('/register', array('controller' => 'home', 'action' => 'register'));

它将默认网址转换为您想要的网址

www.example.com/login and www.example.com/register
于 2013-10-18T10:50:43.343 回答
1
Router::parseExtensions('json'); 
Router::connect('/*', array('controller' => 'home', 
                                'action' => 'login'));

Router::connect('/login', array('controller' => 'home', 
                                    'action' => 'login'));
于 2014-06-14T18:34:42.147 回答