gpt4 book ai didi

ruby-on-rails - 设备的 reset_password_sent_at 分配

转载 作者:行者123 更新时间:2023-12-01 07:41:39 25 4
gpt4 key购买 nike

问题在于,当用户单击链接以重置其密码(来自电子邮件)以及尝试重置(以表格形式)时,设备正在检查 reset_password_sent_at 时发生错误:

Reset password token has expired, please request a new one

意思是,“当生成一个 reset_password_token 时,@user.reset_password_sent_at 需要设置为 Time.now,否则当设备运行 @user.reset_password_period_valid? 以找出重置 token 是否仍然有效时,它将为零并假设 token 已过期。”

我不明白的是如何以及在何处将 reset_password_sent_at 分配给 Time.now

我是否需要通过控制台将 Time.now 分配给所有用户?如果是这样,我该怎么做?

或者,是不是我需要将 Time.now 分配给 reset_password_sent_at 的 before_create(或其他东西)?如果是这样,我应该如何以及在何处执行此操作?

最佳答案

您无需担心 reset_password_sent_at ;那是什么devise当 reset_password 发送给用户时,将负责正确设置。
reset_password_sent_atreset_password_within 一起使用参数,在 config/initializers/devise.rb 中设置文件。它应该是这样的:

config.reset_password_within = 2.hours

很可能它被设置为 nil0 ,这使得应用程序抛出 password reset token has expired方法。

关于ruby-on-rails - 设备的 reset_password_sent_at 分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13078207/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com