【发布时间】:2013-05-14 14:52:52
【问题描述】:
我在我的 rails 应用程序中成功安装了 devise,并且用户注册工作完美。我还进行了设置,以便用户可以通过发送电子邮件来确认他们的帐户。当用户第一次注册时,这很好用(他们会收到带有确认链接的确认消息)。
但是,当用户将他/她的电子邮件地址从 exampleuser@gmail.com 更改为 exampleuser@hotmail.com 时,邮件将被传递到 exampleuser@gmail.com,并且确认链接看起来没有确认令牌
http://{HOST}/users/confirmation
不是正常的
http://{HOST}/users/confirmation?confirmation_token=TOKEN_HERE
当我重新保存新电子邮件 exampleuser@hotmail.com 时,它现在会发送到此地址,但确认令牌无效,因为它与数据库中的不匹配。
我不知道出了什么问题。
confirmation_instructions.html.erb
<p>Welcome <%= @resource.unconfirmed_email? ? @resource.unconfirmed_email : @resource.email %>!</p>
<p>You can confirm your account email through the link below:</p>
<p><%= link_to 'Confirm my account', confirmation_url(@resource, :confirmation_token => @resource.confirmation_token) %></p>
我在设计初始化器中也有config.reconfirmable = true
我也在使用 sideqik 来处理延迟的工作。邮件全部由sideqik处理
有什么帮助吗? 谢谢
【问题讨论】:
标签: ruby-on-rails devise devise-confirmable