私はDjangoで予定されている仕事の実例をインターネットで取り上げました。しかし、私はそれを行う方法しか見つけることができませんが、例は示されていません。誰かがdjangoフレームワークの動作例をcronで分かりやすいタスクを実行して共有できますか?例Cron with Django
0
A
答えて
0
まずようにcronジョブでこのスクリプトを呼び出すことができcustom admin commandを作成する必要があります。このコマンドは、タスクをcrontabに追加するために使用されます。
cron.pyその後
from django.core.management.base import BaseCommand, CommandError
import os
from crontab import CronTab
class Command(BaseCommand):
help = 'Cron testing'
def add_arguments(self, parser):
pass
def handle(self, *args, **options):
#init cron
cron = CronTab(user='your_username')
#add new cron job
job = cron.new(command='python <path_to>/example.py >>/tmp/out.txt 2>&1')
#job settings
job.minute.every(1)
cron.write()
、あなたは以下のコードを見ている場合、Pythonスクリプトは、1分ごとに起動しようとしている。ここに私のカスタムコマンドの一例です。 example.py
ファイルを作成し、1分ごとに作成する機能を追加します。
crontab -l
:
python manage.py cron
は、cronジョブが正常に追加され、次のコマンドを実行していることを確認するには:
すべてがちょうどプロジェクトのDjangoのディレクトリから次のコマンドを起動し、スケジュールされたジョブを追加する用意があります
* * * * * <path_to>/example.py
デバッグTに:
あなたはこのように表示されます彼はexample.pyと呼んでこのコアを呼び出します:
tail -f /tmp/out.txt
0
celery
によってスケジュールされたタスクを実行できます。
セロリは、リアルタイム処理に重点を置いたタスクキューであり、タスクスケジューリングもサポートしています。
0
djangoアプリケーションの何かを使用するpythonスクリプトの先頭に、次のコードブロックを追加してください。
import sys, os, django
# append root folder of django project
# could be solved with a relative path like os.path.abspath(os.path.join(os.path.dirname(__file__), '..') which corresponds to the parent folder of the actual file.
sys.path.append('/path/to/django-project/')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myapp.settings")
django.setup()
その後、あなたはすべての
* * * * * user /path/to/python /path/to/script
関連する問題
- 1. Laravel Scheduler with Cron Job
- 2. DjangoファイルのCronジョブ
- 3. Django管理コマンドCron on Dotcloud
- 4. @scheduled cron式の例外スロー例外
- 5. Django get_or_create with icontains
- 6. cronジョブdowとmon例外
- 7. most_common with django-taggit
- 8. Django Forms with ReactJS
- 9. Django RestフレームワークWith ManyToManyフィールドwith
- 10. Django M2M with追加データwith
- 11. Django Polls Tutorial with Voterid with choice
- 12. Django contrib.auth.models.User with Django MongoDB Engine
- 13. django-south with django-audit-log
- 14. Django pdf with pisa
- 15. PhoneGap with Django Backend
- 16. Django MySQL with ElasticSearch
- 17. Django IntegrityError with DateTimeField
- 18. PyMySQL with Django、マルチスレッドアプリケーション
- 19. FileUpload with Django
- 20. ユーザインタフェース/フロントエンドwith Django
- 21. Django with sqlit3
- 22. Django Filter with AND
- 23. Django auth with redis
- 24. NoReverseMatch with Django
- 25. ModelChoiceField with Django Forms
- 26. Django CreateView with form_class
- 27. Django inlineformset_factory with queryset
- 28. Django send_mass_email with html content
- 29. MagicalRecord with UITableView例
- 30. cronスクリプト内のDjangoロギングの初期化
どのような例が必要ですか?あなたはすでに管理コマンドの作成に関する完全な指示を持っており、cron自体は十分に文書化されています。どこに問題がありますか? –
@DanielRoseman djangoのドキュメントではカスタムコマンドを作成する方法が述べられていますが、必要なのは、 "python manage.py runserver"を呼び出すときにスケジュールされたタスクを実行させることです。私が投稿した他の2つのモジュールでも、私は対応する公式サイトでその指示に従いましたが、それほどうまく動作しません。 –
あなたの言っていることを理解できません。スケジューリングとrunserverの間のリンクは何ですか? (runserverは開発用であるという事実を完全に除けば)また、何かを試してもエラーが出たら、それらを投稿するべきです。 –