Dear All
i follow the instruction of Ruby on rails 3 tutorial, now i want to
update the email of the User,
user =User.find(1)
user.update_attributes(:email=>“[email protected]”)
but the save failed, error message is “password can not be blank”,
so i try this one
user.update_attributes(:email=>“[email protected]”, :password =>“12345678”)
then it success,but i dont want to update the password, i try a lots
times that is i want to change the value of other attributes, i must
update the password, if not ,the updating will fail.
times that is i want to change the value of other attributes, i must
update the password, if not ,the updating will fail.
how can i update without updating the password ?
Check the User model
(…/app/models/user.rb)
and see if there is a validation on password, present, could be e.g.
validates :password, :presence => true
If you not requre a password to be present, you could deactive that
line.
Or, alternatively, you could make sure a password is filled in for the
user.
You can check these valdiation errors e.g. with this code
user.valid? # false if some validation failed
user.errors.messages # all the validations that failed
HTH,
Peter
HI Peter,
Thanks for your advise, i add
attr_accessor :password_confirmation ro user.rb and then delete
validates :password, :presence => true
and then , the problem is resolved.