我有自己的密码/登录规则,我想实现,例如:
等...
目前,当我没有输入密码并在我的表单中登录时,我收到以下错误(来自Authlogic的默认验证):
这些验证规则不在我的模型中,它们来自Authlogic gem。我知道我可以添加一些配置:
acts_as_authentic do |config|
config.validate_password_field = false
end
问题是我找不到这些配置的好文档,当我尝试上面的那个,所以我可以使用我自己的,它抱怨:
undefined method 'password_confirmation' for #<User:0x7f5fac8fe7c0>
这样做:
acts_as_authentic do |config|
config.validate_password_field = false
# added this so it might stop complaining
config.require_password_confirmation = true
end
什么都不做。
有没有办法让Authlogic需要密码确认,而忽略所有其他验证,以便我可以控制它?
答案 0 :(得分:2)
只需在模型中添加以下行即可避免undefined method 'password_confirmation'
:
attr_accessor :password_confirmation
如果您想自己处理确认,请添加:
validates_confirmation_of :password
如果您深入了解代码,可以在password.rb
:
if require_password_confirmation
validates_confirmation_of :password, validates_confirmation_of_password_field_options
validates_length_of :password_confirmation, validates_length_of_password_confirmation_field_options
end