Команда управления Django не найдена cron - PullRequest
1 голос
/ 14 февраля 2010

Я сделал приложение для управления воображением под названием update. Следующее отлично работает из командной строки:

./manage.py update
/full/path/manage.py update

Но когда у меня есть следующая команда cron:

00 */3 * * * /websites/bnc/manage.py update >/dev/null

Это сообщение мне об ошибке:

Неизвестная команда: 'update'

Введите 'manage.py help' для использования.

Это пахнет проблемой пути, но я не могу понять, как, потому что я могу вызвать его вручную откуда угодно. Есть идеи, что здесь происходит?

Ответы [ 3 ]

5 голосов
/ 16 января 2011

У меня была точно такая же проблема, и я нашел решение, вы должны быть в правильном каталоге для запуска команд управления Django.

Для вашего примера вам нужно обновить ваш crontab следующим образом:

00 */3 * * * cd /websites/bnc && ./manage.py update >/dev/null

Работает как шарм. Я не уверен, почему, но добавление этого каталога в мой PYTHONPATH внутри команды не сработало, но вышеприведенное сработало как чудо.

1 голос
/ 14 февраля 2010

Я делаю что-то подобное. Попробуйте предварительно /websites/bnc/manage.py в вашем crontab с PYTHONPATH=...

1 голос
/ 14 февраля 2010

Среда скорее всего не та, поэтому PYTHONPATH / PATH не установлены. Может не найти импорт django (или python / lib / site-packages).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...