Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django EmailMultiAlternations发送到多个”;至;地址_Python_Django_Email_Django Email - Fatal编程技术网

Python Django EmailMultiAlternations发送到多个”;至;地址

Python Django EmailMultiAlternations发送到多个”;至;地址,python,django,email,django-email,Python,Django,Email,Django Email,Django EmailMultiAlternations中是否有一种方法可以发送到多个“收件人”地址,而无需再次发送 尝试用逗号在元组中分隔电子邮件,但只有第一个收件人收到电子邮件。电子邮件地址列表应该可以工作,如图所示 您可能希望使用bcc而不是来查看电子邮件,以防止用户看到电子邮件的其他收件人 msg = EmailMultiAlternatives(subject, text_content, from_email, bcc=to_emails) 我用的是for循环。我还使用它来过滤发

Django EmailMultiAlternations中是否有一种方法可以发送到多个“收件人”地址,而无需再次发送


尝试用逗号在元组中分隔电子邮件,但只有第一个收件人收到电子邮件。

电子邮件地址列表应该可以工作,如图所示

您可能希望使用
bcc
而不是
来查看电子邮件
,以防止用户看到电子邮件的其他收件人

msg = EmailMultiAlternatives(subject, text_content, from_email, bcc=to_emails)

我用的是for循环。我还使用它来过滤发送给哪些用户的电子邮件

for user in users:
    if user.is_active and user != request.user and user.last_login != None:
        message = EmailMultiAlternatives(
        subject = "your subject here",
            from_email = settings.EMAIL_HOST_USER,
            to = [user.email],
            )
        context = {'request':request, 'user':user, 'event':event}
        html_template = get_template("notifications/new_event_email.html").render(context)
        message.attach_alternative(html_template, "text/html")
        message.send()

这可能不是最好的方法,但对我来说是有效的。

您是否也检查过其他收件人是否是有效的电子邮件地址(没有拼写错误,不在垃圾邮件文件夹中,等等)?我们可以传递一组或多组电子邮件吗?@user570826您可以自己测试它,看看它是否有效!元组肯定会起作用。一个集合是可编辑的,所以我想它也可以工作。如果您使用此方法向多个收件人发送邮件,请注意-所有收件人都将列在“收件人”字段中(以便收件人能够看到其他收件人)。如果你想对其他收件人的身份保密,你需要在每个目的地地址上迭代,并为每个收件人调用一次
send_mail
。@GavinBallard说得好,我添加了一个关于使用
bcc
的说明。
for user in users:
    if user.is_active and user != request.user and user.last_login != None:
        message = EmailMultiAlternatives(
        subject = "your subject here",
            from_email = settings.EMAIL_HOST_USER,
            to = [user.email],
            )
        context = {'request':request, 'user':user, 'event':event}
        html_template = get_template("notifications/new_event_email.html").render(context)
        message.attach_alternative(html_template, "text/html")
        message.send()