Пользовательская модель пытается проверить наличие пароля при обновлении? - PullRequest
1 голос
/ 23 октября 2011

У меня есть простая форма обновления учетной записи пользователя, в которой я пытаюсь обновить информацию об учетной записи пользователя, вошедшего в систему.Но когда я пытаюсь сделать user.update_attribute, он терпит неудачу, жалуясь на то, что пароль пуст, даже если моя проверка на наличие пароля говорит :on => :create

Почему это происходит? Я не использую devise / authlogic или любой другой gem для аутентификации

Моя модель User выглядит следующим образом (в качестве столбцов обычно используются подозреваемые password_hash / salt):

attr_accessible :email, :password, :password_confirmation

validates_presence_of :password, :on => :create, :unless => :provider?

UsersController имеет следующий метод обновления:

def update
  @user = current_user
  @user.update_attributes params[:user]

  # this prints error hash, see output below
  logger.error @user.errors.inspect 

  # other rendering code
  flash[:notice] = 'Saved OK'
  render :action => :edit
end

Вывод @ user.errors.inspect после вызова @ user.update_attributes -

#<OrderedHash {:password=>["is too short (minimum is 6 characters)"]}>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...