2015-05-20 53 views
2

我想弄清楚如何自动发送适当任务的电子邮件通知。如何自动发送电子邮件作为提醒

我有一个任务的到期日期,我希望它在指定的日期发送它,但在它到期前1小时。

I'have了创建自定义命令

notify.py

class Command(BaseCommand): 
    help = 'Email notification' 

    def handle(self, *args, **options): 
     Job.generate_emails() 

models.py

@classmethod 
    def generate_emails(cls): 
     pass 

这就是I'have迄今所做。

+1

使用芹菜。 http://celery.readthedocs.org/en/latest/ – ruddra

+1

我会建议https://github.com/arteria/django-background-tasks – taesu

回答

1

对于简单的任务,我宁愿做一个小的custom admin command并在服务器上添加一个cron作业。

如果任务的重复性不够,可以添加一个额外的命令,该命令将频繁运行并清除一个小任务队列,以检查是否要发送电子邮件。

另外还有一些软件包,比如Celery,因为@ ruddra已经很好地指出了(我上次检查时Celery不支持Python 3.4)。

+0

非常感谢! – nope