【问题标题】:Getting error of undefined method 'valid_password?' with Authlogic获取未定义方法“valid_password”的错误?使用 Authlogic
【发布时间】:2011-09-14 06:14:13
【问题描述】:

我在使用 Authlogic 的服务器上突然出现以下错误

NoMethodError (undefined method `valid_password?' for #<ProductionHouse:0xb53859cc>):

authlogic (2.1.3) [v] lib/authlogic/session/password.rb:191:in `send'

authlogic (2.1.3) [v] lib/authlogic/session/password.rb:191:in `validate_by_password'

authlogic (2.1.3) [v] lib/authlogic/session/callbacks.rb:72:in `validate'

authlogic (2.1.3) [v] lib/authlogic/session/validation.rb:64:in `valid?'

authlogic (2.1.3) [v] lib/authlogic/session/existence.rb:65:in `save'

app/controllers/user_session_controller.rb:162:in `create'

pdfkit (0.5.1) lib/pdfkit/middleware.rb:16:in `call'

无法解决突然发生的问题?有没有人知道这方面的,请帮忙?

【问题讨论】:

  • 我遇到了同样的问题。如果您找到解决方法,请报告。
  • 确保你的模型使用acts_as_authentic...你重启了你的应用服务器了吗??

标签: ruby-on-rails authlogic


【解决方案1】:

如果我在数据库可用之前启动 Web 服务器(在我的情况下为 Thin)(例如在我的情况下 MySQL 未运行),我会收到此错误。

我在浏览器中加载应用程序,它抱怨 MySQL 没有运行,所以我启动 MySQL,返回到现在正确加载的应用程序,但不会让我登录(我收到 OP 描述的错误)。

如果我现在去重新启动网络服务器,然后再试一次,我可以正常登录。

大概valid_password? 是在启动时添加到模型中的方法,并且依赖于可用的数据库。

【讨论】:

    猜你喜欢
    • 2011-01-09
    • 2011-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-09
    相关资源
    最近更新 更多