【发布时间】:2020-06-27 06:47:19
【问题描述】:
当我像这样更新设计中的电子邮件 ID 时:
current_user.update!(email: params[:email])
电子邮件被发送到当前的电子邮件 ID。我想将确认电子邮件发送到要更新的新电子邮件 ID。
【问题讨论】:
标签: ruby-on-rails ruby devise ruby-on-rails-5
当我像这样更新设计中的电子邮件 ID 时:
current_user.update!(email: params[:email])
电子邮件被发送到当前的电子邮件 ID。我想将确认电子邮件发送到要更新的新电子邮件 ID。
【问题讨论】:
标签: ruby-on-rails ruby devise ruby-on-rails-5
如果您不想向旧电子邮件发送信息,但想向新电子邮件发送确认说明,您正在寻找config/initializers/devise.rb 中的两个设置,即reconfirmable 和send_email_changed_notification .前者向新电子邮件发送一封带有确认说明的电子邮件(基本上重复在初始创建时发生的事情,其中确认电子邮件被发送到正在使用的电子邮件),而后者发送一封电子邮件已更改为旧电子邮件的信息。因此,您需要将值分别设置为 true 和 false:
# in config/initializers/devise.rb
Devise.setup do |config|
# ...
config.reconfirmable = true
config.send_email_changed_notification = false
end
它们可能已经在您的devise.rb 中——如果是,请确保将它们设置在那里,以免它们出现两次,并以您不希望的方式意外地相互覆盖。
【讨论】:
spring stop)?