2017-10-09 1 views
1

私はジャンゴ-cronのを使用して書かれているのcron持っている:コマンドpython manage.py runcronsが一列に2回実行されると、1分がdjango cronsのスケジュール方法は?

を経過した場合を除き、1つの出力だけが提供されるよう、

from django_cron import CronJobBase, Schedule 

class MyCronJob(CronJobBase): 
    RUN_EVERY_MINS = 1 

    schedule = Schedule(run_every_mins=RUN_EVERY_MINS) 
    code = 'statuscheck.my_cron_job' 

    def do(self): 
     print ("hello") 

それは作品を

私の質問は、たとえば、そのコマンドを週に3回実行するようにスケジュールする方法です。

は、あなたが行うことができ、あなたが

答えて

1

わずか1時間で60分、一日24時間週7日がある与えられた、分の数を変更ありがとうござい何かのように:

RUN_EVERY_MINS = 60 * 24 * 7/3 # three times a week 

あなたのコメントに記載されている問題については、CRONを使うべきだと思います。

https://en.wikipedia.org/wiki/Cron

あなたは(実際のパスで/path/toを置き換える)/etc/crontabにこの行を追加することができます。

* * * * * cd /path/to/manage.py && /usr/bin/python manage.py runcrons 

これは、毎分、あなたのスクリプトを実行します。

端末のセッションでは「hello」は表示されません。あなたはCRON出力を見たい場合は、ファイルにリダイレクトすることができます:私はクーロンを実行すると、それは一度だけ実行:)返信するあなたの時間を割いてくださったことを感謝し、ロイック@

* * * * * cd /path/to/manage.py && /usr/bin/python manage.py runcrons >> /tmp/django_cron.log 
+1

こんにちは、それはdoesnの毎分実行する。 アプリケーションは現在1回実行され、同じコマンドを再度実行しようとすると、1分が経過しない限り動作しません - 私のpython manage.py runcrons 'を実行するには別のスケジューリングプログラムが必要ですか? – theMicroGirl

+0

こんにちは@theMicroGirl私はあなたのコメントに答えるために私の答えを編集しました。 –

+0

ありがとう、私は今それを試します:) x – theMicroGirl

関連する問題