设计验证用户电子邮件以@ berkeley.edu结尾

时间:2014-09-05 05:16:33

标签: ruby-on-rails regex validation devise

尝试验证在我的网站上注册的用户是否有以@ berkeley.edu结尾的电子邮件地址,但似乎我所做的正则表达式验证会产生一些错误。

这就是我在User.rb文件中的内容:

validates :email, :presence => true, :uniqueness => true, :format => {:with => /\A[\w+\-.]+@(berkeley|uw)\.edu\z/i}

有什么想法吗?

忘记提及我收到的错误消息是“电子邮件已被占用”,当它显然不在Users表中时。它无论如何都会创建用户,所以我不知道问题是什么。

1 个答案:

答案 0 :(得分:0)

定义自定义验证器

validate :check_email

def check_email
  errors.add(:email, "your error message") unless self.email.include? "@berkeley.edu"  
end