2015-10-15 50 views
0

我创建了一个新的rails API。 它只适用于手机,所以需要一个phone号码来创建一个帐户。rails设计通过其他字段更改电子邮件验证

但是现在Devise总是要求email,我怎么能设想我想让他专注于我的领域phone

ActiveRecord::RecordInvalid (Validation failed: Email can't be blank): 

我希望它改变

ActiveRecord::RecordInvalid (Validation failed: Phone can't be blank): 

,做好每一个基本色器件验证与电话号码

+0

是否要使用手机提交的登录密钥? –

+0

只有电话和密码注册 – F4Ke

回答

0

你应该告诉制定了authentication_key是phone领域,而不是email

修改config/initializers/devise.rb有:

config.authentication_keys = [ :phone ] 
+0

它仅用于身份验证吗?没有注册? – F4Ke

+0

据我所知,是的。但是唯一一次我使用了authentication_keys,我完全用用户名替换了电子邮件,并且用户不被允许注册(账户是由管理员创建的)。所以你的里程可能会变化.... –