繁体   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