django-cron任务不会自动执行

时间:2017-09-24 00:03:56

标签: python django django-cron

当我运行SELECT name, population FROM countries ORDER BY population DESC LIMIT 1 时,cron作业成功执行(打印'已执行')。但它并没有自动完成。它应该像我在课堂上所说的那样每分钟执行一次。这是代码:

settings.py

python manage.py runcrons

app.views

CRON_CLASSES = [
    "app.views.MyCronJob"
]

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

您还需要为cron设置crontab条目:

> crontab -e
*/5 * * * * source /home/ubuntu/.bashrc && source /home/ubuntu/work/your-project/bin/activate && python /home/ubuntu/work/your-project/src/manage.py runcrons > /home/ubuntu/cronjob.log

取自official documentation

答案 1 :(得分:0)

+1 Ayush的回答。这对我有用。

  

crontab -e

这将打开编辑器,复制粘贴底部的以下行并保存&关闭。

  

* / 5 * * * *来源/home/ubuntu/.bashrc&& source / home / ubuntu / work / your-project / bin / activate&& python /home/ubuntu/work/your-project/src/manage.py runcrons> /home/ubuntu/cronjob.log

除此之外,请尝试在Django项目目录中重新运行这些:

python manage.py runcrons --force
service cron start