Rails: как сделать так, чтобы 2 атрибута активных записей не совпадали с валидацией? - PullRequest
2 голосов
/ 24 апреля 2009

Я хочу запретить пользователям регистрироваться с паролем = логин по соображениям безопасности. Я пробовал что-то вроде этого:

  validates_each :password do |record, attr, value|
    if(value == self.login)
      record.errors.add(attr)
    end
  end

Но я всегда получаю следующую ошибку: неопределенный метод входа в систему для себя. Я думаю, это как-то связано с иерархией классов, но как мне получить доступ к более высокому уровню?

Я немного застрял здесь, пожалуйста, помогите.

1 Ответ

4 голосов
/ 24 апреля 2009

Попробуйте

if value == record.login

запись передается в блок как локальная переменная record и в этом контексте не является self.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...