0

我目前正在使用设计进行用户注册,并希望限制基于 @company.com 或 @work.com 等域的注册。目的是让用户只提供他们电子邮件地址的第一部分,例如“lucy.dale”,然后从下拉菜单中选择他们的域,例如@company.com。请查看我到目前为止生成的代码..

<div><%= f.label :email %><br />
<%= f.text_field :first_email, :autofocus => true %><%= f.select :domain, options_for_select([["Select One", ""], "@company.com", "@work.com", "@office.com"]) %>

由于我无权访问设计控制器或邮件程序,请您告诉我如何加入 :first_email 和 :domain 属性以提供 (lucy.dale@company.com) 属性,然后再将其传递给默认值 :email设计中的属性。

提前感谢您的帮助

4

1 回答 1

1

我希望这可以帮助那里的人。我没有扩展设计注册控制器,而是决定使用正则表达式来验证域。这将允许我限制域,如下所示

validates_format_of :email, :with => /\A([^@\s]+)@(company\.com)|(work\.com)\z/

正则表达式已添加到模型中以进行验证。

于 2013-08-23T20:30:57.523 回答