1

我正在使用EmailMessagedjango 发送邮件。这是我的代码:

  message = " test message "
  email = EmailMessage('test subject', message, to=['me@test.com'])
  email.send()

但是我需要向不同的人发送更多不同内容的电子邮件,所以如果我做了两次以上的操作,发送邮件需要很长时间。比如 10 秒或更长时间。是否有任何其他解决方案可以更轻松快捷地发送?

在php中它非常快。我也可以在 django 中有这个吗?

多谢。

4

2 回答 2

3

如果您需要发送多封电子邮件并希望加快流程,可以使用 Django 的send_mass_mail功能。该文档非常清楚地说明了如何使用它;这是一个示例表格:

message1 = ('Subject here', 'Here is the message', 'from@example.com', ['first@example.com', 'other@example.com'])
message2 = ('Another Subject', 'Here is another message', 'from@example.com', ['second@test.com'])
send_mass_mail((message1, message2), fail_silently=False)

这将为所有电子邮件重用一个连接。

于 2013-03-12T05:37:45.300 回答
1

扩展到@Thomas Orozco 的答案。

django-pigeonpost - 允许您设置发送邮件的时间,等等...

https://github.com/dragonfly-science/django-pigeonpost

django cron - 从 webapp 的第一个请求开始,它将每 300 毫秒(0.3 秒)发送电子邮件

https://sites.google.com/site/vigeblog/blog/sendmailswithdjango

如果发送邮件再次变慢(在您看来),您必须检查您的服务器,重构您的代码并进行测试。

于 2013-03-12T06:13:41.770 回答