django芹菜电子邮件后端。


django-celery-email-with-retr的Python项目详细描述

使用Celery队列进行带外发送的Django电子邮件后端 的消息。

此fork恢复在尝试Task.max_retries次后停止重试的重试逻辑, 其中默认值为3

使用django芹菜电子邮件

要为项目启用django-celery-email,您需要将djcelery_email添加到 INSTALLED_APPS

INSTALLED_APPS += ("djcelery_email",)

然后必须将django-celery-email设置为EMAIL_BACKEND

EMAIL_BACKEND = 'djcelery_email.backends.CeleryEmailBackend'

默认情况下,django-celery-email将使用django的内置SMTP电子邮件后端 为邮件的实际发送。如果你想使用另一个后端,你 可以在CELERY_EMAIL_BACKEND中设置它,就像您通常设置的那样 EMAIL_BACKEND在你用芹菜之前。实际上,正常的安装 程序很可能是只使用django让你的电子邮件正常工作,然后 将EMAIL_BACKEND更改为CELERY_EMAIL_BACKEND,然后添加新的 EMAIL_BACKEND从上面设置。

如果需要设置任何设置(属性),通常可以在 Celery Task类如果是您自己编写的,可以在^{tt15}中指定它们$ 在CELERY_EMAIL_TASK_CONFIG设置中:

CELERY_EMAIL_TASK_CONFIG = {
    'queue' : 'email',
    'rate_limit' : '50/m',
    ...
}

有一些默认设置。除非另有说明,否则 将应用以下设置:

CELERY_EMAIL_TASK_CONFIG = {
    'name': 'djcelery_email_send',
    'ignore_result': True,
}

安装完成后,如果芹菜安装正常,请发送 电子邮件将像以前一样工作,只是发送将是 由芹菜工人负责:

from django.core import mail

emails = (
    ('Hey Man', "I'm The Dude! So that's what you call me.", 'dude@aol.com', ['mr@lebowski.com']),
    ('Dammit Walter', "Let's go bowlin'.", 'dude@aol.com', ['wsobchak@vfw.org']),
)
results = mail.send_mass_mail(emails)

results将是一个芹菜AsyncResult对象列表,您可以忽略这些对象,或者使用它来检查 电子邮件传递任务的状态,如果需要,甚至等待它完成。你必须启用一个结果 后端并在CELERY_EMAIL_TASK_CONFIG中将ignore_result设置为False,如果您想使用它们的话。 有关详细信息,请参见Celery docs

len(results)将是您尝试发送的电子邮件数,决不会反映成功或失败 他们的交货。

更改日志

1.0.3-2012.03.06

  • 后端现在将传递初始化为 电子邮件发送后端。
  • 感谢Fedor Tyurin的贡献。

1.0.2-2012.02.21

  • 任务和后端现在接受可以在信号处理程序中使用的Kwargs。
  • 任务现在从电子邮件发送后端返回结果。
  • 感谢Yehonatan Daniv所做的这些更改。

1.0.1-2011.10.06

  • 修正了导致任务抛出错误并报告成功的错误。
  • 如果发送电子邮件后端引发异常,则任务的结果将 现在是例外。

推荐PyPI第三方库


热门话题
camkesjsonapi分析程序manytomynealarmedgewallb18hexlifybeerpay定位器音频视频pyglfwtermcastgraftpressurlsafemydocumentsravsdeepcon吐温knapsack01r6octdnspigeonbluemindmaploomphizzmarcopolosurfer横轴圆木mailmodelkrpc计算环境lhsoperpelementcucmpowny蜂群sqlquerycarddefsfsioantalgorithmsmulticastappeuswebb重复性picamera均方