#ruby-on-rails #email #devise
#ruby-on-rails #Адрес электронной почты #разработать
Вопрос:
Есть ли встроенный метод в devise, с помощью которого я могу проверить, является ли данное имя пользователя или адрес электронной почты уникальным для всех существующих имен пользователей и электронных писем. (Скажем, если я не хочу проверять при создании модели) я могу просто сказать
if user.is_unique?
execute some code here
end
Я использую rails 3, и в моем gemfile просто написано gem ‘devise’ (поэтому он становится самым последним), если эта информация важна
Ответ №1:
Я думаю, что такого метода нет, но вы можете добавить его самостоятельно в User
модель. Попробуйте это:
def is_email_unique?
!(User.all - [self]).map(amp;:email).include?(self.email)
end
Ответ №2:
Вы могли бы сделать это в своей пользовательской модели:
def is_unique?
!User.exists?(:email => email) amp;amp; !User.exists?(:username => username)
end