我收到类似的错误Ruby on Rails Authlogic password not valid“密码无效”似乎从未解决
如果我创建了一个新用户,则在脚本/控制台中:
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
我得到了相同的回复。有什么建议吗?
答案 0 :(得分:4)
我只是深入研究了AuthLogic代码,看起来将validate_password_field
设置为false只会阻止Rails运行默认验证。它对valid_password?
方法没有影响。
还有许多其他因素似乎导致它返回false。这些包括但不限于:
为了给出更明确的答案,我可能需要更多关于您确切设置的信息。
答案 1 :(得分:2)
我遇到了类似的问题,当Authlogic需要255时,旧的Restful Authentication密码字段的长度为40个字符。
答案 2 :(得分:1)
就我而言,这只是一个混乱的数据库迁移。 rake db:migrate VERSION=0 && rake db:migrate
为我解决了这个问题。
答案 3 :(得分:0)
如果你有,请尝试在user.rb中注明“before_save:encrypt_password”。
# before_save :encrypt_password