Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cakephp 登录会从我的URL中删除slug_Cakephp - Fatal编程技术网

Cakephp 登录会从我的URL中删除slug

Cakephp 登录会从我的URL中删除slug,cakephp,Cakephp,我正在使用Cake 2.1.3和routes.php文件,除了登录管理之外,其他一切都正常工作,例如,我希望我的url如下所示: Router::connect( '/:slug/users/login', // E.g. /companyx/users/login array('controller' => 'users', 'action' => 'login'), array( // order matters '

我正在使用Cake 2.1.3和routes.php文件,除了登录管理之外,其他一切都正常工作,例如,我希望我的url如下所示:

Router::connect(
        '/:slug/users/login', // E.g. /companyx/users/login
        array('controller' => 'users', 'action' => 'login'), array(
        // order matters
        'pass' => array('slug')
        )
    );

其中companyx是slug,但在浏览器中运行该url时,如下所示:

Router::connect(
        '/:slug/users/login', // E.g. /companyx/users/login
        array('controller' => 'users', 'action' => 'login'), array(
        // order matters
        'pass' => array('slug')
        )
    );

在这个文件routes.php中,我定义如下:

Router::connect(
        '/:slug/users/login', // E.g. /companyx/users/login
        array('controller' => 'users', 'action' => 'login'), array(
        // order matters
        'pass' => array('slug')
        )
    );
对于其他控制器,我没有任何问题,例如:

Router::connect(
        '/:slug/users', // E.g. /companyx/users 
        array('controller' => 'users', 'action' => 'index'), array(
        // order matters
        'pass' => array('slug')
        )
    );

致以最良好的祝愿;)

CakePHP在AuthComponent中定义了一个默认登录操作。(第171行)


您可以在自己的UsersController中使用beforeFilter覆盖此操作。

谢谢您的回答。我这样解决了这个案子:

public function beforeFilter() {
    parent::beforeFilter();
     if (!$this->request->is('post')) {
        $this->Auth->loginAction = 'this is:slug/users/login/';
     }
}
其中“这是slug”,应该是slug

致以最良好的祝愿