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

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

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java无法获得正确的温度转换输出   java如何使用vlcj版本4.7.0制作用于音频流的HeadlesMediaPlayer?   java密钥斗篷无法获取访问令牌   java Uribacon的BeaconLayout是什么?   mysql的java Spring数据xml配置   java从使用布局的页面适配器中删除特定位置页面。刷卡   java使用安卓从web目录读取文件   java使用Sikuli导出应用程序   swing JAVA如何更新已绘制的字符串?   java Worker任务在WildFly中多次生成   爪哇12小时制(上午/下午)   java生成Google地图发布密钥   java如何在IntelliJ中将maven模块的groupId添加到名称/表示中   java Selenium WebDriver标识输入标记内的Td value元素   java如何将JAXWS中的Date@webgram映射到xsd:Date而不是xsd:datetime?   java Remove arraylist字符串停止随机函数   java使用googlehttpclientxml解析xml:使用XmlObjectParser解析xml元素内容和属性   java如何在array response 2中获取特定的响应数据   java我无法为安卓导入或使用AdView