我想不要求電子郵件只簽署手機號碼註冊用戶和使用設計寶石登錄。我從config/initializers/devise.rb刪除了電子郵件:刪除devise gem中的電子郵件字段?
3
A
回答
3
這是devise的validate.rb文件的link。你可以看到一個email_required方法嗎?在模型中。所以我猜
def email_required?
false
end
你需要把上面的方法放在你的model.rb文件中。
您還需要對用戶表進行一些修改。默認情況下,Devise不允許電子郵件字段爲空。創建並運行更改遷移,允許電子郵件爲空
# in console
rails g migration AddChangeColumnNullToUserEmail
# migration file
class AddChangeColumnNullToUserEmail < ActiveRecord::Migration
def self.up
change_column :users, :email, :string, :null => true
end
def self.down
change_column :users, :email, :string, :null => false
end
end
3
您可以使用this指南,但使用mobile
而不是username
。例如
在devise.rb:
config.authentication_keys = [:mobile]
在你的控制器:
.permit(:mobile)
更改電子郵件字段到移動領域app/views/devise/sessions/new.html.erb
和app/views/devise/registrations/new.html.erb
在devise.en.yml:
invalid: 'Invalid mobile number or password.'
not_found_in_database: 'Invalid mobile number or password.'
0
ü必須更改config.authentication_keys = [ :phone_number ]
它取決於如何將其保存在您的數據庫中,並在形式上將f.email_field
更改爲f.text_field
應該是。
+0
沒有這是錯的 –
相關問題
- 1. Devise Gem:只用電子郵件登錄
- 2. 刪除電子郵件字段FOSUserBundle
- 3. 在Identity 2.0中註冊期間刪除電子郵件字段
- 4. SharePoint Designer 2007:從電子郵件中刪除秒字段
- 5. 從條紋結賬中刪除「電子郵件地址」字段
- 6. 宏刪除電子郵件
- 7. PHP從電子郵件列表中刪除電子郵件
- 8. 刪除電子郵件字段谷歌應用程序腳本
- 9. Drupal電子郵件字段
- 10. 查找用戶的電子郵件`devise`
- 11. 電子郵件郵件字段驗證
- 12. Rails + Devise - 發送電子郵件到電子郵件+數組中的用戶名
- 13. 設置電子郵件字段只讀
- 14. 從Ruby中的字符串中刪除電子郵件地址
- 15. 刪除重複的電子郵件
- 16. 刪除電子郵件附件在Outlook
- 17. Python的電子郵件,如何刪除/刷新'到'字段中的消息
- 18. PHP電子郵件結合字段發送電子郵件
- 19. 刪除Drupal Webform提交電子郵件中的分頁符字段
- 20. 刪除電子郵件中的重複字符串
- 21. 刪除電子郵件地址中的無效字符
- 22. 在實際電子郵件中刪除了Gmail電子郵件表格填充
- 23. 從電子郵件中刪除HTML標記,德興電子郵件正文
- 24. 如何爲Devise Mailer電子郵件設置自定義密件抄送/字段?
- 25. 閱讀和刪除電子郵件
- 26. 使用mailinator API刪除電子郵件
- 27. 電子郵件重複數據刪除
- 28. 刪除電子郵件自動
- 29. 使用imaplib(gmail)刪除電子郵件
- 30. 刪除電子郵件地址?
你檢查https://github.com/plataformatec/devise/wiki/How-To:-Allow-users-to-sign-in-使用他們的用戶名或電子郵件地址,你可以使用'手機號碼'而不是'用戶名' –