Rails разрабатывает уникальную электронную почту - PullRequest
0 голосов
/ 02 ноября 2011

Есть ли в устройстве встроенный метод, позволяющий проверить, является ли данное имя пользователя или адрес электронной почты уникальным для всех существующих имен пользователей и адресов электронной почты.(Скажем, если я не хочу проверять при создании модели) я могу просто сказать

if user.is_unique?
     execute some code here
end

Я использую рельсы 3, а мой gemfile просто говорит gem 'devise' (так что он становится самым последним),если эта информация важна

Ответы [ 2 ]

1 голос
/ 02 ноября 2011

Я думаю, что такого метода нет, но вы можете добавить его самостоятельно в модель User.Попробуйте это:

def is_email_unique?
  !(User.all - [self]).map(&:email).include?(self.email)
end
0 голосов
/ 13 декабря 2011

Вы можете сделать это в вашей модели пользователя:

def is_unique?
  !User.exists?(:email => email) && !User.exists?(:username => username)
end
...