password encryption is not working..

I am using require 'digest/sha1' to encrypt my password and save into database. During login it is showing the following error-

undefined local variable or method `encrypted_password' for #<Signin:0x992c990

code:

before_save :encrypt_password

def has_password?(submitted_password)   encrypted_password == encrypt(submitted_password) end

  private

     def encrypt_password        self.salt = make_salt unless has_password?(password)        self.encrypted_password = encrypt(password)      end

     def encrypt(string)        secure_hash("#{salt}--#{string}")      end

     def make_salt        secure_hash("#{Time.now.utc}--#{password}")      end

     def secure_hash(string)        Digest::SHA2.hexdigest(string)      end

Please help me dis !

you are not declared ‘encrypted_password’’ variable. so first declared that variable in model and use it.

I am using require 'digest/sha1' to encrypt my password and save into database. During login it is showing the following error-

undefined local variable or method `encrypted_password' for #<Signin:0x992c990

You have tried to access a method encrypted_password on the Signin class. Either the signins table does not have a column of that name, or you are calling encrypted_password on the wrong class type.

Colin

i think you should read this link for this problem :- http://ruby.railstutorial.org/chapters/modeling-and-viewing-users-two#sec:secure_passwords