我对 Django 中 crontab 的使用还很陌生。我已按照此链接https://hprog99.wordpress.com/2014/08/14/how-to-setup-django-cron-jobs/中的说明进行操作,以帮助我设置我的方法 my_scheduled_job() cron.py 文件,我想每五分钟调用一次。
这是我更新的设置.py
INSTALLED_APPS = (
'django_crontab',
...)
CRONJOBS = [
('*/5 * * * *', 'myproject.cron.my_scheduled_job')
]
之后我运行了这个:
python manage.py crontab add
输出:
adding cronjob: (d0428c9ae8227ed78b17bf32aca4bc67) -> ('*/5 * * * *', 'cinemas.cron.my_scheduled_job')
下一步:什么也没发生。
如何在本地启动这个 cron 作业?有没有办法测试我的工作是否正常运行?
在 django 中,您可以使用 django-chronograph 或 chronograph 设置 cron。
Django-chronograph 是一个简单的应用程序,允许您控制 Django 管理命令运行的频率。
第1步: 在 django 中创建任务的管理命令。要创建 django 管理命令,请参阅编写自定义 django-admin 命令。
第2步: 创建 django 管理命令后,在 cronograph 中配置命令。
希望这对您有帮助。
首先,你必须指定你的项目配置文件,然后添加 cron 作业,如果你的项目名称是 foo,那么它是这样的:
export FOO_PROFILE = 'local'
python manage.py crontab add
并且,在运行上述命令之前,您应该首先在 settings.local 中配置 cron 环境,例如:
# django-crontab config
CRONTAB_DJANGO_SETTINGS_MODULE = 'gold.settings.local'
Python 中有测试选项卡吗?可能是在某个地方进行模拟以获得教程。尝试在代理答案或类似的帮助和命令程序中进行关键字搜索。
python manage.py runserver
一旦启动服务器,crontab将根据settings.py中指定的时间自动执行。
实际上,您想要的是创建一个 Django 命令并在 crontab -e 中创建一个作业条目来调用该命令。