我是django-cron的新手,正在尝试定期发送邮件。我一直在db shell中运行以下命令:
from django.core.mail import EmailMessage
email = EmailMessage('Subject', 'Body', to=['[email protected]'])
email.send()
效果很好。我在其中一个应用程序中创建了以下cron.py:
from django_cron import CronJobBase, Schedule
from django.core.mail import EmailMessage
class SendMail(CronJobBase):
RUN_EVERY_MINS = 1
schedule = Schedule(run_every_mins=RUN_EVERY_MINS)
code = 'apps.appname.cron.SendMail'
def job(self):
email = EmailMessage('Subject', 'Body', to=['[email protected]'])
email.send()
在我的设置中,我有:
CRON_CLASSES = [
"apps.appname.cron.SendMail",
]
最后在命令行中运行
env/bin/python manage.py runcrons --settings=settings.dev
我希望这能每分钟发送一次邮件,但是尽管我没有看到任何命令行错误,但是邮件没有被发送。
任何帮助,不胜感激
C
最佳答案
所以我想我在看文档的旧版本。在SendMail类中,该方法应为“ do”而不是“ job”。同时,尽管邮件仅发送一次,但每分钟发送一次。
关于django - 创建常规电子邮件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15091776/