Прежде всего, вы хотите создать команду управления, следуя этому руководству.https://docs.djangoproject.com/en/2.1/howto/custom-management-commands/
Скажем, мы хотим запускать команду closepoll
в примере каждые 5 минут.Затем вам нужно будет создать скрипт для запуска этой команды.
Linux / MacOS:
#!/bin/bash -e
cd path/to/your/django/project
source venv/bin/activate # if you use venv
python manage.py closepoll # maybe you want to >> /path/to/log so you can log the results
сохранить файл как run_closepoll.sh
, запустить chmod +x run_closepoll.sh
в командной строке
Теперь мы можем использовать crontab для запуска нашей команды
run crontab -e
в командной строке добавьте эту строку: */5 * * * * /path/to/run_closepoll.sh
Теперь команда будет выполняться каждые 5 минут.Если вы не знакомы с crontab, вы можете использовать этот веб-сайт https://crontab -generator.org /
Windows:
Same content as the above example, but remove the first line and save as run_closepoll.bat
В меню Пуск,найдите Task Scheduler
, следуйте инструкциям в графическом интерфейсе, оттуда все должно быть довольно просто.
для получения дополнительной информации о планировщике задач см. здесь: https://docs.microsoft.com/en-us/windows/desktop/taskschd/using-the-task-scheduler