【问题标题】:Devise skip reconfirmation设计跳过再确认
【发布时间】:2016-10-12 09:09:29
【问题描述】:

我需要跳过,不是确认电子邮件,而是重新确认电子邮件。

假设我有一个用户收到了一封已确认的电子邮件。我想手动更改其电子邮件以用于测试/支持目的

u.email # => email1@example.com
u.email = 'email2@example.com'
u.save
u.email # => email1@example.com
u.unconfirmed_email # 'email2@example.com'

我在保存之前和之后尝试了u.skip_confirmation!,但它似乎对重新确认电子邮件没有帮助...未确认的电子邮件不会转移到电子邮件字段

有什么办法可以强制新的未确认邮件切换到普通邮件?

【问题讨论】:

  • 该方法只跳过发送邮件,不确认存储在unconfirmed_mail中的新邮件。也许您可以像 u.confirm 一样手动确认用户。也许这不是您正在寻找的解决方案。
  • 是的u.confirm 似乎有效,但只有在我先保存之后。如果您发布此答案,我可以接受。

标签: ruby-on-rails devise ruby-on-rails-5 devise-confirmable


【解决方案1】:

该方法只跳过发送邮件,不确认存储在unconfirmed_mail 中的新邮件。也许您可以像u.confirm 一样手动确认用户。 confirm 方法只有在对象被保存后才有效。

要跳过重新确认电子邮件通知,请使用:skip_confirmation_notification!

这里是Code reference

或尝试skip_reconfirmation! 这可能会确认新电子邮件并避免发送电子邮件通知。我没有使用它,但我从上面代码参考中的注释中理解了这一点(skip_confirmation_notification! 定义的下一个方法)。所以试试吧,让我知道。

【讨论】:

  • 嘿,刚刚意识到这显然不允许我跳过重新确认电子邮件。有没有办法做到这一点?
  • 更新了答案。
  • 是的 skip_reconfirmation! 绝对是使用的方法!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-07-23
  • 1970-01-01
  • 1970-01-01
  • 2015-08-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多