为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 django “Rest Framwork” 发送电子邮件?

如何使用 django “Rest Framwork” 发送电子邮件?

慕码人8056858 2021-08-24 14:52:01
我正在使用小型 Rest api 项目,它的效果非常好。但不知何故我必须在那里发送电子邮件功能。所以我在 settings.py 中添加了电子邮件配置// 设置.py# SMTP Mail service with decoupleEMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'EMAIL_HOST = "smtp.gmail.com"EMAIL_HOST_USER = config('EM_ACCOUNT')EMAIL_HOST_PASSWORD = config('EM_PASSWORD')EMAIL_PORT = 587EMAIL_USE_TLS = TrueDEFAULT_FROM_EMAIL = EMAIL_HOST_USER//视图.pyfrom rest_framework import viewsetsfrom consult.models import Consultfrom consult.serializers import ConsultSerializerfrom django.core.mail import EmailMessageclass ConsultViewSet(viewsets.ModelViewSet):    queryset = Consult.objects.all()    serializer_class = ConsultSerializerdef send_email(request):    email = EmailMessage(        'Title',        (ConsultSerializer.name, ConsultSerializer.email, ConsultSerializer.phone),        'my-email',        ['my-receive-email']    )    email.attach_file(ConsultSerializer.file)    email.send()// 模型.pyfrom django.db import models# Create your models here.class Consult(models.Model):    name = models.CharField(max_length=16)    position = models.CharField(max_length=16, null=True)    group = models.CharField(max_length=50)    email = models.CharField(max_length=50, null=True)    phone = models.CharField(max_length=14)    describe = models.TextField(blank=True, null=True)    file = models.FileField(blank=True, null=True)    create_date = models.DateTimeField(auto_now_add=True)    update_date = models.DateTimeField(auto_now=True)    class Meta:        db_table = 'Consult'// 序列化器.pyfrom rest_framework import serializersfrom .models import Consultclass ConsultSerializer(serializers.ModelSerializer):    class Meta:        model = Consult        fields = ('id', 'name', 'position', 'group', 'email', 'phone', 'describe', 'file', 'create_date')是的。这是我所有的代码。我在视图中设置了 send_mail 函数。老实说,我想要在我的数据库中查询数据时自动发送邮件功能。但我只能找到正常的 Django 解释。你能帮我设置一个创建数据时自动发送邮件的功能吗??
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 190 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号