Django Rest Framework发送验证邮件

问题描述 投票:3回答:1

有没有办法发送验证邮件。当用户通过drf(Django Rest框架)注册时。我在User模型中有这个代码:

from django.core.mail import send_mail
from config import settings

def email_user(self, subject, message, from_email=settings.DEFAULT_FROM_EMAIL, **kwargs):        
    send_mail(subject, message, from_email, [self.email], fail_silently=False, **kwargs)

在我的settings.py

EMAIL_USE_TLS = True
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_PASSWORD = '`132312123'
EMAIL_HOST_USER = '[email protected]'
EMAIL_PORT = 587
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER

但是电子邮件没有发送,我也想验证电子邮件服务,因此用户点击链接时会被激活。如何完成这些?

python django rest email django-rest-framework
1个回答
5
投票

如果你看看here

控制台后端

控制台后端只是编写将发送到标准输出的电子邮件,而不是发送真实的电子邮件。默认情况下,控制台后端会写入stdout。通过在构造连接时提供stream关键字参数,可以使用不同的类似对象。

也:

此后端不适用于生产 - 它是为了方便开发时使用而提供的。

试试这个:

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
© www.soinside.com 2019 - 2024. All rights reserved.