【问题标题】:users_signup_test.rb fails at assert users.reload.activated. Expected false to be truthy. Railstutorial Hartlusers_signup_test.rb 在断言 users.reload.activated 时失败。期望假为真。 Railstutorial Hartl
【发布时间】:2019-11-02 22:18:17
【问题描述】:

我遵循 micheal hartl 的书籍 railstutorial。在第 11 章,我的测试在 users_signup_test.rb 中失败。在我的 account_activations_contrller.rb 文件中,操作编辑 user.authenticated?(:activation, params[:id]) 始终为 false

【问题讨论】:

    标签: ruby-on-rails-5


    【解决方案1】:

    我有同样的问题是我忘记重构已验证的?正确的方法

    我有:

    def authenticated?(attribute, token)
      digest = send("#{attribute}_digest")
      return false if remember_digest.nil?
    
      BCrypt::Password.new(digest).is_password?(token)
    end
    

    注意remember_digest.nil?

    应该是:

    def authenticated?(attribute, token)
      digest = send("#{attribute}_digest")
      debugger
      return false if digest.nil?
    
      BCrypt::Password.new(digest).is_password?(token)
    end
    

    希望对你有所帮助?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-04
      • 2021-12-31
      • 1970-01-01
      • 2017-04-10
      • 1970-01-01
      • 2019-04-11
      • 1970-01-01
      • 2012-10-12
      相关资源
      最近更新 更多