Django Rest Framework发送验证邮件

时间:2017-03-03 07:44:09

标签: python django rest email django-rest-framework

有没有办法发送验证邮件。当用户通过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 = 'mimic@gmail.com'
EMAIL_PORT = 587
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER

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

1 个答案:

答案 0 :(得分:5)

如果你看here

  

控制台后端

     

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

此外:

  

此后端不适用于生产 - 提供为   在开发过程中可以使用的便利。

试试这个:

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'