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第三方库


热门话题
xerces 重新配置 box 花瓣 图像格式 hassing diss composition adspygoogle drops dinamic combo jsonstore craigslist schneier avaya cnae post3 greenhouse cpufreq sentient essex gpc poseur mycache pyimpfuzzy yodine scientpyfic endpoints 火车 波动性 healthchecker 孩子 sfn moderngl centreon gsmmodem dynamixel 文字游戏 rtmbot chaostoolkit microsoft 债权人 抽象数据类型 winpdb geogrids let hookbox clip gtk2