Crontab作业未在Django项目中执行

时间:2020-10-17 13:02:53

标签: python django cron pipenv

我正在使用crontab执行某些功能,但是当我运行服务器时,该作业未处理。当我使用命令crontab show时,它向我显示作业,当我运行服务器时,它又一次未执行。我按照https://pypi.org/project/django-crontab/的文档进行操作,并观看了YouTube教程,但无济于事。

crontab -l。显示以下内容:'* / 1 * * * * /Users/nourelgeziry/.local/share/virtualenvs/Equal_Distribution_maintainance-M-bcKwQz/bin/python / Users / nourelgeziry / Desktop / MyProjects / Equal Distribution maintenanceance / EDMS / manage.py crontab运行bd84e5bec9ad4805b334e11fafec1b5c#django-cronjobs for EDMS'。

还值得一提的是,我正在将pipenv用于虚拟环境。

让我知道我是否可以提供更多服务。预先谢谢你

1 个答案:

答案 0 :(得分:0)

我以前也曾尝试使用Django crontabs,但我从未设法使其正常工作。

我所做的是创建自定义的Django命令,该命令可以使用“ python3 manage.py send_emails”(如果send_emails是我的自定义命令的名称)执行。

此处介绍了如何创建自定义Django命令:https://docs.djangoproject.com/en/3.1/howto/custom-management-commands/

所以,这就是我所做的:

1-创建自定义django命令

2-创建一个sh文件,将该文件cd到Django项目目录中并运行python3 manage.py name_of_your_command

3-设置cronjob以定期执行sh文件