CakePHP3 Auth redirectURL路由损坏

时间:2016-11-30 18:46:18

标签: authentication cakephp-3.0

我有一个控制器,可以使用特定方法登录:

public function login() {

    if ($this->request->is('post')){
        $user = $this->Auth->identify();
        if ($user) {
            $this->Auth->setUser($user);
            return $this->redirect($this->Auth->redirectUrl());
        }

    // not logged
    $this->Flash->error('Your username or password is incorrect');

    }
}

和默认路线类似

Router::scope('/', function (RouteBuilder $routes) {
    $routes->fallbacks(DashedRoute::class);
});

用户登录后,CakePHP会抛出错误

  

错误:找不到匹配“/”的路由。

     

当前连接的路线都不匹配提供的参数。   添加匹配的路由到config / routes.php

当IMO应该重定向到执行登录方法的页面(基于相关控制器)。

登录代码基于that教程。

有什么想法?

1 个答案:

答案 0 :(得分:1)

要解决此问题:

请更新routes.php文件中的以下行

路由器:: defaultRouteClass(' DashedRoute&#39);

Router :: scope(' /',function(RouteBuilder $ routes){

$routes->connect('/', ['controller' => 'users', 'action' => 'index']);

$routes->fallbacks('DashedRoute');

}); 插件::路线();

请在用户控制器中创建index()。 如果有任何问题,请告诉我。