仅允许特定的多个电子邮件在Rails中注册

时间:2017-07-31 05:48:49

标签: ruby-on-rails ruby authentication devise email-validation

我正在尝试为rails中的web应用程序执行验证系统,该系统仅允许具有特定电子邮件地址的人注册。

我在stackoverflow上看过几篇关于此的文章,但他们大多只讨论一个电子邮件域,在我的情况下我需要更多的电子邮件域。

validates :email, format: { with: /\b[A-Z0-9._%a-z\-]+@domain1\.com\z/, message: "must be a domain1.com account" }

我已经尝试在模型的 user.rb 文件中添加这行代码,并尝试添加各种变体以便接受更多案例,但我总是最终以下内容:

1.一切都被接受(我想要的域名和我不想要的域名)

2.没有被接受

3.只有最后一个被接受

4.只有第一个被接受

如果有人可以提供帮助,我真的很感激。

1 个答案:

答案 0 :(得分:2)

您可以使用以下正则表达式:

\b[A-Z0-9._%a-z\-]+@(domain1|domain2)\.com\z