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

To 和 From 在 django send_mail() 中返回相同的电子邮件 ID

To 和 From 在 django send_mail() 中返回相同的电子邮件 ID

饮歌长啸 2023-02-07 13:51:12
Views.pydef contact(request):    if request.method == 'POST':        message_name = request.POST['message-name']        message_email = request.POST['message-email']        message = request.POST['message']        # send an email        send_mail(            'Message from ' + message_name,  # subject            message,  # message            message_email,  # from email            ['myEmailId@gmail.com'],  # to email        )settings.pyEMAIL_HOST = 'smtp.gmail.com'EMAIL_PORT = 587EMAIL_HOST_USER = 'myEmailId@gmail.com'EMAIL_HOST_PASSWORD = '<myaccount app password>'EMAIL_USE_TLS = True联系人.html<form action="{% url 'contact' %}" method="POST" class="bg-light p-5 contact-form">  {% csrf_token %}  <div class="form-group">      <input type="text" name="message-name" class="form-control" placeholder="Your Name">  </div>  <div class="form-group">      <input type="email" name="message-email" class="form-control" placeholder="Your Email">  </div>  <div class="form-group">      <textarea name="message" id="" cols="30" rows="7" class="form-control" placeholder="Message">       </textarea>   </div>   <div class="form-group">       <input type="submit" value="Send Message" class="btn btn-primary py-3 px-5">   </div></form>我已经为联系我页面创建了这段代码。现在,当用户提交包含字段message-name、message-email 和 message的联系表单时,我会收到一封电子邮件,其中FROM和TO都是我的email-id。它没有检索用户的电子邮件。但其余领域工作正常。甚至使用DebuggingServer进行了测试,并且按预期工作。好像我在 setting.py 中遗漏了一些东西,因为那是我更改的一个文件。我不明白我哪里出错了。任何帮助表示赞赏。
查看完整描述

1 回答

?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

您不应在发件人字段中使用用户的电子邮件地址。它应该是您控制的地址。通过在 from 字段中使用用户的电子邮件,这意味着电子邮件是由用户发送的,但事实并非如此,也不应该发生。

此外,gmail 不允许您从您的帐户中的任何其他人的电子邮件地址发送电子邮件。

我建议您使用自己的电子邮件地址,并在消息中包含用户的电子邮件地址。


查看完整回答
反对 回复 2023-02-07
  • 1 回答
  • 0 关注
  • 102 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信