由于天气恶劣,我有一项功能可以重新安排捐赠者的捐款日期。用户可以进行大规模重新安排。如果捐赠者有电子邮件,它会向他们发送一封电子邮件,允许他们使用包含UUID的链接“确认”,“重新安排”或“取消”。
在测试时我遇到了一个非常奇怪的问题。我通过电子邮件大量重新安排了5名捐赠者。
austin@gmail.com
another@email.com
metkil@yahoo.com
austin@outlook.com
bbbbb@gmail.com
每封电子邮件都以“Hello DONORS NAME ”开头... @ yahoo.com电子邮件,无论我输入的顺序如何,都会收到与austin@gmail.com相同的电子邮件一。只有@yahoo电子邮件我有这个问题。我在发送电子邮件之前打印出电子邮件的正文并且正文看起来正确但是一旦收到电子邮件,就会出错,并获取第一个捐赠者的内容。
我将发送电子邮件的过程放在for rescheduled_donor in donors_with_emails
循环中,并通过sendgrid作为我的smtp服务一次发送一封。
for rescheduled_donor in donors_with_emails
recipient = rescheduled_donor.email
#..........
body = template.render(context)
print 'Recipient: {0}'.format(recipient)
email.to = [recipient]
email.body = body
email.attach_alternative(body, "text/html")
email.send()
print email.body
电子邮件的初始化位于我for
循环
email = EmailMultiAlternatives()
email.subject = email_script.subject
email.from_email = DEFAULT_FROM_EMAIL
template = get_template('email/email.html')
我不能为我的生活弄清楚为什么只有这一封电子邮件没有得到正确的内容而是收到第一批捐赠者。