使用Django和芹菜在特定时间安排电子邮件



这是我正在寻找的用例:

  • 用户将在我的应用程序上注册
  • 这是一个笔记和余数应用程序
  • 创建剩余部分时,用户将输入我的应用程序希望在该时间向用户发送电子邮件的时间
  • 我也得用芹菜我读了几篇帖子,并堆叠了溢出的答案,但没有得到正确的答案

我的应用程序是用Django编写的。

当用户创建一个新的提醒时,只需在芹菜中安排一个发送电子邮件任务。注意,这是一个简单的解决方案,但它会让用户很难在创建后更改通知时间

根据这个答案:

要在指定的日期和时间执行任务,您可以在调用文档中提到的任务时使用apply_async的eta属性

your_task.apply_async(kwargs={}, eta="your_send_time")

另一种解决方案是每1分钟运行一次任务,如果有任何电子邮件要发送,该任务将在DB中进行检查。你不必为此使用芹菜。像克朗一样的利布应该会成功。例如schedule-lib或django-cron或django命令


编辑:这家伙说你不应该在Django中使用dbader/schedule。

最新更新