Я следую инструкции Волшебство для сброса пароля.Я обнаружил, что код работает, даже если подтверждение моего пароля отличается.Моя пользовательская модель имеет attr_accessor :password, :password_confirmation
.
Соответствующий код взят из действия обновления app/controllers/password_resets_controller.rb
т.е.
@user.password_confirmation = params[:user][:password_confirmation]
if @user.change_password!(params[:user][:password])
redirect_to(root_path, :notice => 'Password was successfully updated.')
Используя pry, я могу подтвердить, что @user.password_confirmation
возвращает «действительно неправильно»(params[:user][:password]
возвращает 'foobar', поэтому подтверждение отличается от пароля, но @user.change_password!(params[:user][:password])
возвращает true.
Что здесь не так?