如何在crontab中配置项目和virtualenv路径以计划Django中的作业?

时间:2019-05-26 03:01:21

标签: python django cron

我正在使用一个名为django_cron的库来调度Django的任务。我已经完成了所有必需的设置,包括但不限于将以下代码块添加到crons.py文件中:

class MyCronJob(CronJobBase):
    RUN_EVERY_MINS = 1 # every 2 minutes.

    schedule = Schedule(run_every_mins=RUN_EVERY_MINS)
    code = 'core.my_cron_job'    # a unique code

    def do(self):
       pass;

但是,在contrab编辑器中配置contrab命令时遇到了很多麻烦。我当前正在使用此命令(因为我正在使用虚拟环境):

* * * * * source /Users/myame/Desktop/dev/Websites/django_env/bin/activate
&& python /Users/myname/Desktop/dev/Websites/project/manage.py runcrons

我收到此错误:

crontab: installing new crontab
"/tmp/crontab.kdldvixya8":4: bad minute
crontab: errors in crontab file, can't install

我该如何解决?它出什么问题了?预先谢谢你。

1 个答案:

答案 0 :(得分:0)

您无需激活virtualenv,只需在其中直接调用python。尝试这样

0 * * * * /Users/myame/Desktop/dev/Websites/django_env/bin/python /Users/myname/Desktop/dev/Websites/project/manage.py runcrons

应该按小时运行