2013-09-12 3 views
0

У меня есть приложение Rails 3, и я хочу показать 4 основных направления:Завещание - как требовать пароль при смене пароля

. текущий пароль

. текущий пароль подтвержден

. новый пароль

. Новый пароль подтверждение

as well as куча других полей для пользователя, и я только хочу, чтобы требовать от пользователя ввести свой текущий пароль, если они ввести новый пароль.

Однако, я не могу найти, как это сделать в Devise.

Каковы атрибуты Devise, позволяющие мне это делать?

ответ

0

если добавить

devise :validatable 

вашей модели пользователя, Разрабатывают автоматически проверит вашу модель. Логика проверки можно найти по адресу: https://github.com/plataformatec/devise/blob/master/lib/devise/models/validatable.rb#L53

вы также можете перезаписать этот метод в контроллере, просто overwriding метод Придумайте, как так:

def password_required? 
    prepared? || !password.nil? || !password_confirmation.nil? 
    end 
Смежные вопросы