我在互聯網上搜索了Django中一個預定作業的工作示例。但我只能找到如何去做,但沒有給出任何例子。有人可以共享一個Django框架的工作示例,使用cron運行一個草率的任務嗎?Cron與Django的示例
0
A
回答
0
首先,創建一個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分鐘創建的功能。
所有準備加入計劃作業,剛剛從項目的Django目錄調用以下命令:
python manage.py cron
要驗證cron作業已成功添加調用以下命令:
crontab -l
您應該看到這樣的事情:
* * * * * <path_to>/example.py
要調試ŧ他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()
那麼你應該能夠調用這個腳本在一個cronjob像
* * * * * user /path/to/python /path/to/script
相關問題
- 1. Django與Select2遠程數據示例
- 2. Django:正在運行Django-cron
- 3. Ruby on Rails Cron工作示例
- 4. Django Haystack Faceting示例
- 5. django html css示例
- 6. 的cron標籤的Django
- 7. Django + SWFUpload的代碼示例?
- 8. django創建者的Django應用示例
- 9. Django cron提取RSS
- 10. django cron webfaction上的錯誤
- 11. Django的Cron作業文件
- 12. WP-的cron與ADD_ACTION
- 13. Django信用帳戶示例
- 14. django-ajax-selecting示例用法
- 15. django-tables2-simplefilter工作示例
- 16. AbstractUser Django完整示例
- 17. django-guardian示例源代碼
- 18. Django和SQL注入示例
- 19. django-cron如何工作?
- 20. django cron在openshift上運行
- 21. Cron Job訪問django模型
- 22. Cron php與codeigniter
- 23. delayed_job與cron
- 24. cron與gsettings
- 25. 顯示視圖,與Django的
- 26. Django的HTTP Response對象爲GAE的Cron
- 27. 的Django的cron沒有執行工作
- 28. PayPal沒有用戶存在的DoDirectPayment(例如與cron工作)
- 29. django-cms中的導航節點示例
- 30. 的Django揚鞭示例代碼
需要哪些示例?你已經有了制定管理命令的完整說明,而且cron本身也有很好的文檔。你在哪裏遇到麻煩? –
@DanielRoseman在django文檔中講述瞭如何創建自定義命令,但我需要的是在調用「python manage.py runserver」時使計劃任務運行。另外我還發布了其他兩個模塊,我在其相應的官方網站上按照他們的說明進行操作,並且它不會顯式地工作 –
我不明白你在說什麼。調度和runserver之間有什麼聯繫? (完全拋開runserver僅用於開發的事實)。另外,如果您嘗試某些操作時遇到錯誤,則應將其發佈。 –