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

ruby-on-rails – 使用设计确认后自动登录

发布时间:2020-12-17 04:31:39 所属栏目:百科 来源:网络整理
导读:我正在使用设计确认.我有一些自定义的东西,我需要覆盖设计的确认!方法,所以在我的用户模型中,我有以下方法覆盖它: def confirm! super gb = Gibbon::API.new(ENV['MAILCHIMP_API_KEY']) gb.lists.subscribe({:id = ENV['MAILCHIMP_ID'],:email = {:email =
我正在使用设计确认.我有一些自定义的东西,我需要覆盖设计的确认!方法,所以在我的用户模型中,我有以下方法覆盖它:
def confirm!
  super
  gb = Gibbon::API.new(ENV['MAILCHIMP_API_KEY'])
  gb.lists.subscribe({:id => ENV['MAILCHIMP_ID'],:email => {:email => self.email }})
end

这非常有效.现在我想要它,以便用户在确认后自动登录,但无法弄清楚如何.我知道这被认为是一个安全漏洞,但我已经承受了风险,因此我的网站用户体验值得.我不想对routes文件做任何事情,因为这个方法已经有效,所以我应该可以从这里开始.我已经尝试将以下内容放入我的配置文件中:

config.allow_insecure_sign_in_after_confirmation = true

但它没有签署用户.

我在Avoid sign-in after confirmation link click using devise gem?看了堆栈溢出页面并且没有用,所以请不要将其标记为重复.

感谢大家.

解决方法

你会改变routes.rb和controllers / users / confirmations_controller.rb(也许是默认路径)

routes.rb映射用户/ confrimations_controller

devise_for :users,controllers: {confirmations: 'users/confirmations'}

confirmmations_controller自动登录并重定向到

def after_confirmation_path_for(resource_name,resource)
  sign_in(resource)
  any_path # redirect_to is not necessary
end

(编辑:李大同)

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

    推荐文章
      热点阅读