對於首頁的靜態化,考慮到頁面的資料可能由多名運營人員維護,並且經常變動,所以將其做成定時任務,即定時執行靜態化。
在django執行定時任務,可以通過django-crontab擴充套件來實現。
pip install django-crontab
...
'django_crontab', # 定時任務
...]在配置檔案中設定定時執行的時間
每個定時任務分為三部分定義:
首頁的定時任務設定如下
# 定時任務
cronjobs = [
# 每5分鐘執行一次生成主頁靜態檔案
('*/5 * * * *', 'contents.crons.generate_static_index_html', '>> /users/smart/desktop/meiduo_mall/logs/crontab.log')
]
在定時任務中,如果出現非英文本元,會出現字元異常錯誤
可以通過在配置檔案中新增定時任務執行的附加命令來實現
# 解決crontab中文問題
crontab_command_prefix = 'lang_all=zh_cn.utf-8'
新增定時任務到系統中
python manage.py crontab add
顯示已經啟用的定時任務
python manage.py crontab show
移除定時任務
python manage.py crontab remove
django crontab定時任務
django crontab可以定時執行自定義命令和函式兩種方式,因為之前嘗試用command crontab時已經實現了自定義command,所以自然而然使用了自定義命令這種形式。我先參考django官方文件自定義了乙個命令aizhan 5domain visits,專門用於抓取愛站流量,並將結果...
Django crontab 定時執行任務
由於看到celery 外掛程式學習曲線較大,這個小的需求就使用django crontab 解決。pip install django crontab django crontab 到這裡基本沒有問題,接下來建立定時任務可以分成兩種,一種是執行自定義的mange.py的命令,另一種是執行自定義函式。...
Django crontab 的安裝與使用
django crontab是能讓 在後台自動執行定時任務的包,具體的文件在github上已經十分齊備,我只在它的基礎上進行補充說明。django crontab只能在linux下使用,詳情見部落格 pip install django crontab用pycharm的可以直接在file setti...