2015-10-15 48 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,我完全用用戶名替換了電子郵件,並且用戶不被允許註冊(賬戶是由管理員創建的)。所以你的里程可能會變化.... –