Django Djoser:电子邮件地址重置

Django Djoser:电子邮件地址重置,django,django-rest-framework,email-address,djoser,Django,Django Rest Framework,Email Address,Djoser,我使用用户名作为主要标识。但是,用户也有电子邮件地址。我想知道如何设置“电子邮件地址重置”,以便用户可以更改其电子邮件地址。这个功能对我来说似乎很明显,但我没有发现任何东西——是我遗漏了什么,还是我的方法不正确 哦,我想保持用户名不变,我只是想通过确认等方式更改电子邮件。我认为先将电子邮件发送到新地址,然后再更改它是很重要的 任何帮助都将不胜感激。提前谢谢。首先,我建议您观看这本很棒的Djoser教程,然后您需要使用gmail API或sendgrid API设置电子邮件配置。下面是一个示例代码

我使用用户名作为主要标识。但是,用户也有电子邮件地址。我想知道如何设置“电子邮件地址重置”,以便用户可以更改其电子邮件地址。这个功能对我来说似乎很明显,但我没有发现任何东西——是我遗漏了什么,还是我的方法不正确

哦,我想保持用户名不变,我只是想通过确认等方式更改电子邮件。我认为先将电子邮件发送到新地址,然后再更改它是很重要的


任何帮助都将不胜感激。提前谢谢。

首先,我建议您观看这本很棒的Djoser教程,然后您需要使用gmail API或sendgrid API设置电子邮件配置。下面是一个示例代码,您需要将其放入设置中

对于gmail

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_USE_TLS = True
EMAIL_USE_SSL = False
EMAIL_PORT = 587
EMAIL_HOST_USER = 'your email address@gmail.com'
EMAIL_HOST_PASSWORD = 'gmail API Key (password)'
从中复制模板 然后在设置中添加html,如下所示

'PASSWORD_RESET_CONFIRM_URL': 'password_changed_confirmation/password/reset/confirm/{uid}/{token}',
    'USERNAME_RESET_CONFIRM_URL': 'username_changed_confirmation/username/reset/confirm/{uid}/{token}',
    'ACTIVATION_URL': 'activation/activate/{uid}/{token}',
    'SEND_ACTIVATION_EMAIL': True,
    'SERIALIZERS': {},

希望这会有所帮助。首先,我建议您观看这本很棒的Djoser教程,然后您需要使用gmail API或sendgrid API设置电子邮件配置。下面是一个示例代码,您需要将其放入设置中

对于gmail

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_USE_TLS = True
EMAIL_USE_SSL = False
EMAIL_PORT = 587
EMAIL_HOST_USER = 'your email address@gmail.com'
EMAIL_HOST_PASSWORD = 'gmail API Key (password)'
从中复制模板 然后在设置中添加html,如下所示

'PASSWORD_RESET_CONFIRM_URL': 'password_changed_confirmation/password/reset/confirm/{uid}/{token}',
    'USERNAME_RESET_CONFIRM_URL': 'username_changed_confirmation/username/reset/confirm/{uid}/{token}',
    'ACTIVATION_URL': 'activation/activate/{uid}/{token}',
    'SEND_ACTIVATION_EMAIL': True,
    'SERIALIZERS': {},

希望这会有所帮助

您是否已经配置了smtp服务器?嘿,Al-Amin。我已成功配置密码重置和帐户激活。问题是我不知道Djoser是否支持此电子邮件重置功能。当然,我可以对它进行反向工程,但从我看来,它不是。逻辑告诉我,如果你真的无法重置你的电子邮件,那么这就是一个巨大的缺陷。这就是为什么我认为应该有一些东西。如果没有,我想我将不得不自己实施。我也考虑过(可能会创建一个拉请求,IDK),你是否已经配置了SMTP服务器?嘿,Al Amin。我已成功配置密码重置和帐户激活。问题是我不知道Djoser是否支持此电子邮件重置功能。当然,我可以对它进行反向工程,但从我看来,它不是。逻辑告诉我,如果你真的无法重置你的电子邮件,那么这就是一个巨大的缺陷。这就是为什么我认为应该有一些东西。如果没有,我想我将不得不自己实施。我也考虑(也许创建一个拉请求,IDK)