Cakephp一个登录函数/多个登录视图

Cakephp一个登录函数/多个登录视图,cakephp,login,views,Cakephp,Login,Views,我有一个带有登录系统的网站。但是,我希望登录视图会有所不同,这取决于用户用来访问登录屏幕的链接 比如: function login ($from_page = null) { if (isset($page)) $this->render('login_alternate_view'); else $this->render('login'); //default login view } 然后,每个登录视图(login.ctp、login\u alternat

我有一个带有登录系统的网站。但是,我希望登录视图会有所不同,这取决于用户用来访问登录屏幕的链接

比如:

function login ($from_page = null) {

    if (isset($page)) $this->render('login_alternate_view');
    else $this->render('login'); //default login view
}
然后,每个登录视图(login.ctp、login\u alternate\u view.ctp)都会有一个登录表单以及其他特定于每个视图的内容


这在某种程度上是可能的吗?我已经尝试过上面的示例,但它不起作用…

首先在评论中显示您正在谈论的真正错误消息,而不是“某物”


我猜您想要用户登录时所在的当前页面url?如何生成模态?通过ajax请求整个表单,还是将其嵌入到您所在的页面中?如果它是嵌入的,我会将用户当前页面的url放在登录表单的隐藏字段“from”中,并进行检查。

首先在评论中显示您正在谈论的真实错误消息,而不是“某物”


我猜您想要用户登录时所在的当前页面url?如何生成模态?通过ajax请求整个表单,还是将其嵌入到您所在的页面中?如果它是嵌入式的,我会将用户所在的当前页面url放在登录表单中的隐藏字段“from”中,并进行检查。

因此我使用GET变量修复了它:

/users/login?some_var=some_value
然后在登录函数中,我用以下命令捕获该变量的值:

$this->params['url']['some_var'];

通过这种方式,我可以根据用户使用的链接“自定义”我的登录功能,因此我使用GET变量修复了它:

/users/login?some_var=some_value
然后在登录函数中,我用以下命令捕获该变量的值:

$this->params['url']['some_var'];

通过这种方式,我可以根据用户使用的链接“自定义”我的登录功能

是否应该
设置($page)
类似
!空($from_page)
?可能吧,但我的主要问题是,当我将一个参数传递给登录函数(比如/users/login/variable)时,我会得到一个errorwell,问题是我使用ajax调用该函数并在弹出窗口中显示它。如果我调用/users/login,一点问题都没有。如果我调用/users/login/something,它会显示请求失败:错误或类似的东西我可以在一个视图(login.ctp)中完成所有操作,但我仍然需要一种方法来知道用户使用了什么链接……应该是这样的。我们需要看到更多的代码。可能是您有一条导致问题的路线。
isset($page)
应该类似于
!空($from_page)
?可能吧,但我的主要问题是,当我将一个参数传递给登录函数(比如/users/login/variable)时,我会得到一个errorwell,问题是我使用ajax调用该函数并在弹出窗口中显示它。如果我调用/users/login,一点问题都没有。如果我调用/users/login/something,它会显示请求失败:错误或类似的东西我可以在一个视图(login.ctp)中完成所有操作,但我仍然需要一种方法来知道用户使用了什么链接……应该是这样的。我们需要看到更多的代码。可能是您的路径导致了问题。我无法使用当前页面,因为在同一页面中,用户有多个登录选项,因此我需要知道他使用的确切链接。我发现了这一点,我发布了答案。我不能使用当前页面,因为在同一页面上,用户有多个登录选项,所以我需要知道他使用的确切链接。我弄明白了,我贴出了答案