首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将Django与Celery一起使用时发送电子邮件时出错

将Django与Celery一起使用时发送电子邮件时出错
EN

Stack Overflow用户
提问于 2014-11-28 22:22:12
回答 1查看 999关注 0票数 1

我正在尝试发送电子邮件,如果通过web服务器执行,下面的工作完全没有问题。然而,当我尝试将任务发送到Celery时,我总是得到一个断言错误返回,告诉我" to“需要是一个列表或元组。

我不希望通过网络服务器发送电子邮件,因为它会减慢事情,所以如果有人可以帮助我解决这个问题,将不胜感激。

代码语言:javascript
复制
from celery import Celery
from django.core.mail import send_mail, EmailMessage

app = Celery('tasks', backend='amqp', broker='amqp://')

@app.task
def send_mail_link():
    subject = 'Thanks'
    message = 'body'
    recipients = ['someemail@gmail.com']
    email = EmailMessage(subject=subject, body=message, from_email='info@example.com', to=recipients)
    email.send()
EN

回答 1

Stack Overflow用户

发布于 2014-11-29 05:03:25

我不是百分之百确定为什么,但我做了一些更改,现在它没有任何错误。

我删除了send_mail的导入,并将方法的名称从send_mail_link()更改为send_link()。我还重新启动了芹菜工人,现在一切都正常工作。

新代码是:

代码语言:javascript
复制
from celery import Celery
from django.core.mail import EmailMessage

app = Celery('tasks', backend='amqp', broker='amqp://')

@app.task
def send_link():
    subject = 'Thanks'
    message = 'body'
    recipients = ['someemail@gmail.com']
    email = EmailMessage(subject=subject, body=message, from_email='info@example.com', to=recipients)
    email.send()

希望将来有人会发现这是有帮助的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27190681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档