2016-11-06 3 views
0

Я до сих пор довольно новичок в использовании crontab в Django. Я выполнил инструкцию по этой ссылке https://hprog99.wordpress.com/2014/08/14/how-to-setup-django-cron-jobs/, чтобы помочь мне настроить мой метод my_scheduled_job() в файле cron.py, который я хочу вызывать каждые пять минут.Как запустить Crontab в проекте Django локально?

Вот мой обновленный setting.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 локально? Есть ли способ проверить, нормально ли работает моя работа?

+0

Я решил это, запустив python manage.py runningerver. Функция начала работать каждые 5 минут минут yay! –

ответ

0

Есть ли тестовая вкладка в Python? Вероятно, симуляция где-то, чтобы получить учебник. Попробуйте поиск ключевых слов в ответе агента или подобной помощи и командной программы.

1

В django вы можете установить cron используя django-chronograph или chronograph.

Django-chronograph - это простое приложение, которое позволяет вам контролировать частоту запуска команды управления Django.

Шаг 1: Создайте команду управления своей задачей в django. Для создания команды управления django см. Writing custom django-admin commands.

Шаг 2: После создания команды управления командой django в хронографе.

Надеюсь, это вам поможет.

0
python manage.py runserver 

Как только вы запустите сервер, crontab будет автоматически выполняться в зависимости от времени, указанного в параметрах settings.py.

0

первый, вы должны указать свой профиль проекта, затем добавить хрон, если ваше имя проекта Foo, то это как:

export FOO_PROFILE = 'local' 
python manage.py crontab add 

и, прежде чем запустить выше команду, в вашем settings.local вы должны сначала настроить конфигурацию cron, например:

# django-crontab config 
CRONTAB_DJANGO_SETTINGS_MODULE = 'gold.settings.local'