簡體   English   中英

如何使用Django中的確認碼更新email地址?

[英]How can I update the email address using the confirmation code in Django?

我使用了dj-rest-auth的所有功能來注冊、登錄、確認email地址、修改密碼、重置密碼等等。 不幸的是,該庫不支持更改 email 地址。 我希望通過身份驗證的用戶首先輸入帳戶密碼和新的 email 地址。 身份驗證成功后,我想向用戶發送一個專門生成的確認碼。 只有當他輸入時,舊的 email 地址才會更改為新地址。 據我所知, dj-rest-auth中沒有這樣的功能。 不幸的是,我也沒有在任何地方找到用於此目的的任何當前解決方案或庫。 有沒有人遇到過這樣的問題並可以在這里分享他的解決方案? 先感謝您。

雖然我沒有任何准確的解決方案,但這里有一個替代品。 您可以使用883333489688 All-Auth和某些email后端向新的8838513701288發送8838513701288向8838513701288發送新的8838513701288.在該88385137012888. IN 883885138555555555555555555555555555555555555555555585013858585及使用 django all-auth 后,您只需添加一個 email 后端,這將有助於發送 email。Rest 將由 all-auth 維護。 例如,在您的 settings.py 中,您可以添加一個 SMTP email 后端以從您選擇的 gmail 帳戶發送 email。 將這些代碼行添加到您的 settings.py;

EMAIL_BACKEND='django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_USE_TLS = True
EMAIL_PORT = 587
EMAIL_HOST_USER = DEFAULT_FROM_EMAIL = 'HOST_EMAIL' #HOST_EMAIL is your email from which you want to send email to the user.
EMAIL_HOST_PASSWORD = 'HOST_PASSWORD' #HOST_PASSWORD is the password of the email you are using as HOST_EMAIL

但是在完成所有這些事情之后,要使其在本地運行,您需要將 go 發送到您用作 HOST_EMAIL 的 google 帳戶。 Go管理谷歌帳戶>>安全>>打開安全性較低的應用程序 然后,您將能夠向用戶發送 email。 注意:如果您為您的谷歌帳戶啟用了雙因素身份驗證,那么這些步驟將不起作用。 這種類型的帳戶有一些不同的設置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM