2017-09-24 10 views
0

python manage.py runcronsを実行すると、cronジョブが正常に実行されます( 'Executed'が出力されます)。しかし、それは自動的には行いません。私がクラスで述べたように毎分実行するはずです。django-cronタスクが自動的に実行されない

settings.py

CRON_CLASSES = [ 
    "app.views.MyCronJob" 
] 

app.views

class MyCronJob(CronJobBase): 
    RUN_EVERY_MINS = 1 

    schedule = Schedule(run_every_mins=RUN_EVERY_MINS) 
    code = 'my_app.my_cron_job' # not sure what this is supposed to be? 

    def do(self): 
     print('Executed') 

任意のアイデア:ここでは、コードですか?

答えて

0

あなたはまた、cronのためのcrontabエントリを設定する必要があります。

> crontab -e 
*/5 * * * * source /home/ubuntu/.bashrc && source /home/ubuntu/work/your-project/bin/activate && python /home/ubuntu/work/your-project/src/manage.py runcrons > /home/ubuntu/cronjob.log 

はアユシュの答えのために official documentation

+0

これは私にとって違うのだろうか?ですから、デスクトップからの私のプロジェクトは 'project/bin/activate'です。 – Zorgan

+0

私は、cron(fcron、cronieなど)を提供するパッケージの1つをインストールして設定する必要があります。 –

0

1から取られました。これは私のために働いた。

これは、エディタを開く下部に次の行をコピー&ペーストして&近くを保存します-e

のcrontab。アクティブ/

*/5 * * * *ソース& &ソース/ホーム/ Ubuntuの/仕事/あなたのプロジェクト/home/ubuntu/.bashrc/binに& &のpython /ホーム/ Ubuntuの/仕事/ your-プロジェクト/ srcが/ manage.py runcrons> /home/ubuntu/cronjob.logこれに加えて、あなたのDjangoプロジェクトのディレクトリにこれらを再実行してみてください

:私はUbuntuを使用したMAC OSXを実行しているではない

python manage.py runcrons --force 
service cron start 
関連する問題