找不到导致运行时错误的用户#id的有效映射?

时间:2014-09-05 13:10:56

标签: ruby-on-rails ruby-on-rails-3.2

我正在尝试按照Railscast Reset password tutorial上的教程设置我的应用程序的重置密码,一切顺利,直到点击邮件中的重置密码链接后的最后一步,所以当我更新密码时它告诉我“PasswordResetsController#update中的RuntimeError”由于“无法找到#的有效映射”而导致

您可以在下面的屏幕截图中更详细地查看错误。当我试图将reset_password迁移到users表时,我在进程开始时遇到了迁移错误,它说remember_token表已经存在,所以跳过它,你认为它与错误有任何关系。 / p>

非常想知道我做错了什么,谢谢你...... [不幸的是我的声誉不够高,无法发布图片,所以我按顺序发布了图片的链接,别介意。]

http://i.stack.imgur.com/pPNIv.jpg

http://i.stack.imgur.com/IbOFR.png

1 个答案:

答案 0 :(得分:0)

建立链接以将密码重置为

localhost:3000/password_resets?remember_token=abcdefghikfhgj

在password_resets_controller.rb中: -

def edit
  @user = User.find_by_remember_token(params[:remember_token])
end

def update
  @user = User.find_by_remember_token(params[:remember_token])
  #other codes
end