У меня есть следующая модель, и я пытаюсь отключить проверку пароля для модели User с помощью этой Проверка Rails Предотвращает сохранение
class User < ActiveRecord::Base
before_save :encrypt_password
validates :password, :presence => true,
:confirmation => true,
:length => { :within => 4..12 },
:if => :password_required?
def password_required?
self.new_record? or self.password?
end
#
# where we encrypt on creation
#
def encrypt_password
if password.present?
self.password_salt = BCrypt::Engine.generate_salt
self.password_hash = BCrypt::Engine.hash_secret(password, password_salt)
end
end
Я получаю сообщение об ошибке:
undefined method `password?' for #<User:0x007fc8e0473be0>
Должен ли я просто проверить self.password_hash? Есть другая форма для обновления пароля. Какова лучшая стратегия для отключения проверки в этом случае?
ТНХ