初学者,想要写一个 model,主要是用来记录用户名和密码,现在的目的是为了给 password 进行 hash 转换,按我的理解 ActiveRecord::Base 是起到了 attr_accessor 的作用,不知道如下的写法是否存在了纰漏?存在问题,可以设置 password,但是 valid 为 false,求解。
class User < ActiveRecord::Base
validates :name, presence: true
validates :password, presence: true
def password
@password
end
def password=(password)
puts "here"
return if not password
password = generatePassword(password)
super(password)
end
private
def generatePassword(password)
Digest::SHA256.hexdigest(password)
end
end