2012-03-07 4 views
0

Я пытаюсь следовать советам здесь - Rails 3/Devise: Password salt no longer being created?Как подобрать старый пароль?

Но ни один из них не работает - как valid_password? и password_digest. password_digest получает защищенный метод и valid_password? возвращает пустой.

Когда мой пользователь меняет свой пароль, я разрешаю им вводить старый пароль, и если это соответствует зашифрованному паролю в базе данных, я обновляю пароль пользователя.

+0

Какая версия Devise вы используете? Какой шифр вы используете? –

+0

Я использую 1.4.2 - я не уверен, какой шифр он использует, не могли бы вы рассказать мне, как найти это и как его использовать, чтобы я мог зашифровать введенный пользователем старый пароль? – David

ответ

0

чтобы пользователь вводил исходный пароль, просто добавьте: current_password к параметрам, а затем используйте @ user.update_with_password (params [: user]) для обновления с подтверждением текущего пароля.

<div class="field"> 
<%= f.label :current_password %> <i>(we need your current password to confirm your changes)</i><br /> 
<%= f.password_field :current_password %> 
</div> 
Смежные вопросы