访问Django模型的crontab脚本因import而失败

2024-06-14 06:03:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用crontab定期执行python脚本。我按照给定的解决方案here使用virtualenv执行命令。下面是我的crontab

SHELL=/bin/bash
HOME=/
MAILTO="myid@example.com"
* * * * * cd /home/jaskaran/edmhunters && /home/jaskaran/edmhunters/env/bin/python /home/jaskaran/edmhunters/scripts/db/songlist.py

我一直都很担心

^{pr2}$

从shell运行脚本时,该脚本运行良好。我错过了什么?在


Tags: 脚本bashhomebinherevirtualenv解决方案shell
1条回答
网友
1楼 · 发布于 2024-06-14 06:03:32

由于Django如何加载它的INSTALLED_APPLICATIONS以及Django试图访问其设置时出现的所有隐式代码,Django导入错误通常是误导性的。在

要解决此问题,请在脚本中创建一个Django management command。在

如果需要从shell脚本或cron运行virtualenv'ed Django脚本或管理命令,请尝试以下语法:

 export DJANGO_SETTINGS_MODULE=mymodule.settings ; /srv/django/myproject/venv/bin/python /srv/django/myproject/manage.py MyManagementCommand

相关问题 更多 >