【发布时间】:2016-07-05 17:06:30
【问题描述】:
我有一个 Ruby on Rails (4.2.1) 应用程序,它使用 Devise (3.5.1) 对用户进行身份验证,我们正在 Rails (5.0.0) 中重建这个应用程序,我们正在使用 Devise (4.2.0)。当我将用户表从旧应用程序复制到新应用程序时会出现问题,然后在新应用程序中我无法使用旧数据登录。在 devise.rb 初始化程序中,我在两个应用程序中都使用了相同的 secret_key,所以不知道为什么我不能使用旧数据登录到新应用程序,有什么想法吗?
【问题讨论】:
-
有任何错误信息可以帮助我们吗?
-
当我尝试使用旧的电子邮件/密码登录时,我得到的只是“无效的电子邮件或密码”。来自设计的消息。
-
您的应用程序仅处于生产或开发阶段吗?您可以向每个用户发送重置令牌吗?
-
我首先在开发中测试它,是的,我可以将 reset_password_token 发送给每个用户,但我希望用户可以在新应用发布后正常登录且无需更改密码
-
您是否检查过您输入的密码是否等于存储的哈希密码(您可以做到)我敢打赌它不是。我的猜测是设计了内置程序来防止这种情况发生。重置您的用户密码并使用 devise 让他们在点击链接登录时更改密码。
标签: ruby-on-rails ruby devise