【问题标题】:Remembering original destination after authentication with Devise [closed]在使用 Devise 进行身份验证后记住原始目的地 [关闭]
【发布时间】:2019-08-11 21:59:11
【问题描述】:

如果用户访问受保护的页面但未登录,我想执行以下操作 -

  1. 将它们重定向到“登录”页面,并将原始目标保存为查询参数。例如/log-in?dest=%2Faccount%2Fsettings

  2. 成功登录后,重定向到原来的页面而不是默认的root_path,在本例中为/account/settings

有没有使用 Devise 的简单方法来完成此任务?默认情况下,登录后它似乎不会“记住”原始页面,所以我猜我必须在某处覆盖一些before_action

谢谢!

【问题讨论】:

标签: ruby-on-rails authentication devise


【解决方案1】:

devise gem 有一个很棒的 wiki,其中很多问题都以教程风格的方式回答。 所以对于你的第二个问题,你可以关注。这个:

对此的一个提示:在“第一种方法”中,他们提到了

要在用户登录后重定向到存储的位置,您将覆盖 after_sign_in_path_for 方法:

如果您生成它们,您可以在设计控制器中定义此方法。

按照这个方法,你可能甚至不需要你的第一点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-04
    • 1970-01-01
    • 1970-01-01
    • 2018-06-06
    相关资源
    最近更新 更多