Ruby on rails Authlogic密码无效错误

Ruby on rails Authlogic密码无效错误,ruby-on-rails,passwords,authlogic,Ruby On Rails,Passwords,Authlogic,我得到了一个类似的错误,这篇文章“密码无效”,似乎从来没有得到解决 在脚本/控制台中,如果创建新用户: myval = "foo@example.com" u = User.create(:email => myval, :password => myval, :password_confirmation => myval) u.valid? >> true u.save >> true u.valid_password?(myval) >>

我得到了一个类似的错误,这篇文章“密码无效”,似乎从来没有得到解决

在脚本/控制台中,如果创建新用户:

myval = "foo@example.com"
u = User.create(:email => myval, :password => myval, :password_confirmation => myval)
u.valid? 
>> true
u.save
>> true
u.valid_password?(myval)
>>false
如果我在我的user.rb中设置:

acts_as_authentic  do |c|
   c.validate_password_field = false
end

我得到了同样的回答。有什么建议吗?

我刚刚仔细研究了AuthLogic代码,似乎将
validate\u password\u字段设置为false只能防止Rails运行默认验证。它对
有效密码?
方法没有影响

还有许多其他因素似乎会导致它返回false。这些包括但不限于:

  • 检查空白密码
  • 加密密码为空
  • 密码不匹配。(这一点有点复杂,因为其中涉及多种因素,包括加密提供程序以及是否使用RestfulAuthentication样式的密码。)

为了给出一个更明确的答案,我可能需要一些关于您的确切设置的更多信息

我刚刚对AuthLogic代码进行了深入研究,似乎将
validate\u password\u字段设置为false只能防止Rails运行默认验证。它对
有效密码?
方法没有影响

还有许多其他因素似乎会导致它返回false。这些包括但不限于:

  • 检查空白密码
  • 加密密码为空
  • 密码不匹配。(这一点有点复杂,因为其中涉及多种因素,包括加密提供程序以及是否使用RestfulAuthentication样式的密码。)

为了给出一个更明确的答案,我可能需要一些关于您的确切设置的更多信息

我遇到了与此类似的问题,当Authlogic需要255时,旧的Restful身份验证密码字段的迁移长度为40个字符。

我遇到了类似的问题,当Authlogic需要255时,旧的Restful身份验证密码字段的迁移长度为40个字符。

请尝试注释如果有,请在user.rb中选择“保存前:加密密码”

#  before_save :encrypt_password
如果有,请尝试在user.rb中注明“保存前:加密密码”

#  before_save :encrypt_password

在我的例子中,这只是一个混乱的数据库迁移。
rake db:migrate VERSION=0&&rake db:migrate
为我解决了这个问题。

在我的例子中,这只是一个混乱的数据库迁移。
rake db:migrate VERSION=0&&rake db:migrate
为我解决了这个问题。

永远不要忘记检查迁移,当所有的迁移都发生时lse找不到一个反向工作的项目。我使用的是authlogic和restful身份验证迁移的奇怪组合。我的回答有助于您解决这个问题吗?如果有,请接受它(如果您愿意,请升级).到目前为止,你问的7个问题中,你还没有接受其中任何一个问题的答案。唉,我没有投票给你所需的15分,如果有其他人出现在这篇帖子上,你能给彼得应得的吗?除非我遗漏了一些隐藏的“接受解决方案”“按钮。永远不要忘记检查您的迁移,当所有其他操作都失败时,请找到一个可以反向工作的项目。我使用的是authlogic和restful身份验证迁移的奇怪组合。我的回答有助于您解决这个问题吗?如果是这样的话,请接受它(如果你愿意,请提高它)。到目前为止,你问的7个问题中,你还没有接受任何一个问题的答案。唉,我没有投票给你所需的15分,如果有其他人出现在这个帖子上,你能给彼得应得的吗。除非我遗漏了一些隐藏的“接受解决方案”按钮。谢谢!我也有同样的问题,我的想法也快用完了。。。。将我的数据库字段从40更新到255成功了。谢谢你!我也有同样的问题,我的想法也快用完了。。。。将我的数据库字段从40更新到255就成功了。