我有關於用戶名和電子郵件2個問題如何設計的電子郵件和用戶名登錄
1.我判斷用戶名,如果是「@」用戶名一個電子郵件,並權威性它遵循:
email_user = User.objects.get(email__iexact=username)
authenticate(username=email_user.username)
這是你推薦的好方法嗎?或者你可能有更好的建議? 我知道一個AbstractBaseUser
可以做到這一點,但我認爲使用User
更合理。
2.我應該將用戶的電子郵件存儲在User.email
字段內嗎?
試想一下,如果我簽了一個新的用戶:
username: '123'
email: '[email protected]'
時,我立即登記成功,然後我發現我的電子郵件是錯誤的, 現在另一個用戶的電子郵件是「456 @谷歌。 com'不能再次註冊。 我只想驗證一個可以與用戶關聯的電子郵件。 你有什麼建議?
你想編寫自己的代碼呢?或者你只是想用電子郵件驗證功能登錄? – Withnail
User'類繼承自AbstractBaseUser類。您可以創建自己的自定義用戶類,它將覆蓋「基本」django用戶模型。 –
Django auth的用戶模型的用戶名字段的最大長度爲30,因此將其設置爲電子郵件字段將無法使用,如果您希望將電子郵件作爲用戶名,則需要製作自己的自定義用戶模型 – Sayse