django celery 发送多封邮件
django celery send multiple emails
我有这样的看法
def MyView(request):
SendMyMail(args)
我的 SendMymail 是:
def SendMymail(args):
send_mail(title, content, sender, receiver)
这里如果消息太多的话,我想把消息发送过程排队。我已经阅读了芹菜的文档并了解了基础。
我在许多示例中看到人们正在创建 task.py 文件,他们在其中定义带有句点的任务。我想知道在视图中写什么。
任何人都可以给我一个明确的例子,我怎样才能完成发送多封电子邮件
好的,我给你举个例子。使用 celery 发送邮件异步。
def my_view(request):
from tasks import celery_send_mail
user = request.user
<some_stuff>
celery_send_mail.delay(user.email)
<keep_going>
return render(request)
然后在 tasks.py
@celery_app.task(ignore_result=True)
def celery_send_email(email):
<send_your_mail>
要使用celerybeat,你可以从你的celery.conf文件中定期设置任务运行,或者使用第三方应用程序来帮助,我使用django-celery,你可以设置管理员的定期任务。
我有这样的看法
def MyView(request):
SendMyMail(args)
我的 SendMymail 是:
def SendMymail(args):
send_mail(title, content, sender, receiver)
这里如果消息太多的话,我想把消息发送过程排队。我已经阅读了芹菜的文档并了解了基础。
我在许多示例中看到人们正在创建 task.py 文件,他们在其中定义带有句点的任务。我想知道在视图中写什么。
任何人都可以给我一个明确的例子,我怎样才能完成发送多封电子邮件
好的,我给你举个例子。使用 celery 发送邮件异步。
def my_view(request):
from tasks import celery_send_mail
user = request.user
<some_stuff>
celery_send_mail.delay(user.email)
<keep_going>
return render(request)
然后在 tasks.py
@celery_app.task(ignore_result=True)
def celery_send_email(email):
<send_your_mail>
要使用celerybeat,你可以从你的celery.conf文件中定期设置任务运行,或者使用第三方应用程序来帮助,我使用django-celery,你可以设置管理员的定期任务。