Methods
Instance Public methods
authenticate(unencrypted_password)
Link
Returns self if the password is correct, otherwise
false.
class User < ActiveRecord::Base has_secure_password validations: false end user = User.new(name: 'david', password: 'mUc3m00RsqyRe') user.save user.authenticate('notright') # => false user.authenticate('mUc3m00RsqyRe') # => user
password=(unencrypted_password)
Link
Encrypts the password into the password_digest attribute, only
if the new password is not blank.
class User < ActiveRecord::Base has_secure_password validations: false end user = User.new user.password = nil user.password_digest # => nil user.password = 'mUc3m00RsqyRe' user.password_digest # => "$2a$10$4LEA7r4YmNHtvlAvHhsYAeZmk/xeUVtMTYqwIvYY76EW5GUqDiP4."
# File activemodel/lib/active_model/secure_password.rb, line 100 def password=(unencrypted_password) unless unencrypted_password.blank? @password = unencrypted_password cost = ActiveModel::SecurePassword.min_cost ? BCrypt::Engine::MIN_COST : BCrypt::Engine::DEFAULT_COST self.password_digest = BCrypt::Password.create(unencrypted_password, cost: cost) end end
