加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 当设计重定向到登录路径时如何flash.keep

发布时间:2020-12-16 20:58:30 所属栏目:百科 来源:网络整理
导读:注册后,需要确认,我的应用程序重定向到经过身份验证的页面,因此身份验证失败并且设计重定向到登录路径. 注册后我的flash消息因第二次重定向而丢失. 有没有我可以在重定向到登录路径之前,在application_controller.rb或帮助程序中添加flash.keep?如果有替代
注册后,需要确认,我的应用程序重定向到经过身份验证的页面,因此身份验证失败并且设计重定向到登录路径.

注册后我的flash消息因第二次重定向而丢失.

有没有我可以在重定向到登录路径之前,在application_controller.rb或帮助程序中添加flash.keep?如果有替代方案,我宁愿不为此设法覆盖设计控制器.

解决方法

注册后,我会在重定向到登录路径之前在会话中存储一条flash消息(因为用户未经证实它是“after_inactive_sign_up_path_for()”)

设计注册控制器:

class RegistrationsController < Devise::RegistrationsController
  protected
    def after_inactive_sign_up_path_for(resource)
      # store message to be displayed after redirection to login screen
      session[:registration_flash] = flash[:notice] if flash[:notice]
      super
    end
end

然后我会在登录请求期间显示此消息.
设计会话控制器:

class SessionsController < Devise::SessionsController
  def new
    flash[:notice] = session.delete(:registration_flash) if session[:registration_flash]
    super
  end
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读