1

我有一个使用 ajax 添加用户的应用程序。我想将它们登录,但不重定向它们以便可以提交其他表单。这可能吗?我已经搜索了文档,但看不到任何使其不重定向的内容。我看到你可以改变重定向,但你怎么不让它重定向呢?即使我尝试重定向到当前页面,我也会不断收到 err_too_many_redirects。

4

3 回答 3

2

配置 Auth 组件如下:

$this->loadComponent('Auth', [
        'loginRedirect' => false
    ]);
于 2015-10-15T10:51:37.517 回答
0

我使用 Nguyễn Anh Tuấn 的回答让它工作,但以防万一其他人也遇到这个问题,可能值得在子控制器中添加如何执行此操作,而不仅仅是像我一样的 AppController。

(需要指出的是,您可以加载 Auth 组件并在不同的控制器中设置配置,如此处所示但您也可以只设置配置选项。)

当向 AppController 添加 'loginRedirect' => false 并且用户尝试访问他们未授权的页面时,我收到警告“警告 (2): Illegal string offset '_base' [CORE\src\Controller\Component\ AuthComponent.php,第 408 行]。

如果在 AppController 中设置了重定向,那么当用户尝试访问这些页面时不会发生任何事情(它停留在当前页面上)。

所以,我在文档中查找并找到了这个

我刚刚添加了行

$this->Auth->config('loginRedirect', false);

在初始化方法中到我的用户控制器并且它起作用了。

于 2015-10-18T02:50:00.583 回答
0

@巴图赛:

你也可以这样做:$this->Auth->config('loginRedirect', false)

以你想做的方式为基础。

于 2015-10-19T03:32:24.883 回答