我想知道任何用户如何访问login.ctp,即使用户没有登录。在函数beforeFilter()中,我看到了 $ this-> Auth-> allow(' index',' view'); $ this-> Auth->允许('添加','退出');
因此,无需身份验证即可授予访问权限,以便进行索引,查看,添加和注销。我检查了控制器及其父控制器,但没有看到任何说明提供对此功能或页面的访问:/ users / login
感谢。
编辑:我知道在我们登录之前需要登录页面登录应用程序,但我的问题是它是如何知道这是登录页面并且它不需要安全性?
答案 0 :(得分:0)
$this->Auth->allow('index', 'view');
用于控制器中的方法,而不是视图。您可以使用$this->render('login')
在任何方法调用中显示login.ctp视图。我会检查索引方法是否使用login.ctp文件。除此之外,我需要更多信息来了解如何正确回答您的问题。
答案 1 :(得分:0)
auth组件默认允许访问登录操作。
参见 https://github.com/cake.../2.5.6/lib/Cake/Controller/Component/AuthComponent.php#L307
在您通过AuthComponent::$loginAction
属性(分别是组件配置中的loginAction
选项)告诉它之前,它还不知道用于登录的插件/控制器/操作是什么,但是它默认情况下使用/users/login
。
见
答案 2 :(得分:0)
如果你的控制器中有一个登录功能,它会呈现login.ctp
视图,然后在beforeFilter
调用$this->Auth->allow('login);