【问题标题】:Authlogic incorrect password validation errorsAuthlogic不正确的密码验证错误
【发布时间】:2015-02-19 17:37:16
【问题描述】:

我在我的 ubuntu 14.04 上遇到了这个问题,我有 rails 4.1.8 和 ruby​​ 2.1.2。 上次我在 mac OSX 10.10 上使用相同的 rails 和 ruby​​ 版本进行了尝试,我能够成功创建用户。但是当我在我的 ubuntu 14.04 上尝试它时,我收到以下密码字段错误:

密码太短(最少 5 个字符) 密码确认与密码不匹配

密码的长度无关紧要,我确信密码和密码确认是一回事。好像 authlogic 无法识别我的密码字段。 这是我的配置:

acts_as_authentic do |c|
c.validates_length_of_password_field_options = {minimum: 5}
c.crypto_provider = Authlogic::CryptoProviders::BCrypt
c.login_field = :email

注意:authlogic 也将我的电子邮件字段识别为 login_field,因此我对登录字段没有任何问题,只有密码和密码确认。 我在数据库中的密码字段名称是 :crypted_pa​​ssword。

谁能帮我解决这个奇怪的问题,或者谁能告诉我如何调试它以查看为什么 authlogic 验证对 passord 失败?

【问题讨论】:

    标签: ruby-on-rails ruby passwords authlogic


    【解决方案1】:

    我已经解决了这个问题。我的表格是这样的:

      <div class="form-group">
        <%= f.label :crypted_password, 'Password' %><br>
        <%= f.password_field :crypted_password, class: 'form-control' %>
      </div>
    

    而我在控制器中的用户参数是这样的:

    params.require(:user).permit(:email, :crypted_password, :password_confirmation )
    

    似乎 authlogic 没有将 crypted_pa​​ssword 参数识别为密码。当我从 :crypted_pa​​ssword 中删除“加密”时,它起作用了。我不知道为什么它可以在 Mac OSX 上运行,但现在它可以在我的 ubuntu 14.04 上运行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-12
      • 1970-01-01
      • 1970-01-01
      • 2010-12-03
      • 1970-01-01
      • 2011-01-11
      • 1970-01-01
      • 2011-04-25
      相关资源
      最近更新 更多