前言
大家在Django項(xiàng)目開(kāi)發(fā)過(guò)程中,是不是也經(jīng)常遇到這樣的場(chǎng)景:需要實(shí)現(xiàn)一個(gè)定時(shí)任務(wù),但又不想脫離Django環(huán)境獨(dú)立運(yùn)行,如:還需要使用Django的ORM框架操作Models類(lèi)、日志框架、復(fù)用已有配置/方法等等。
大部分同學(xué),初次接觸時(shí)首先想到的就是使用第三方插件,如:django-celery,django-crontab等等,我也不例外,但實(shí)際使用過(guò)程,總有諸多不爽,要么感覺(jué)大材小用,要么功能支持不完整,要么使用很繁瑣。。。
多次嘗試摸索后,發(fā)現(xiàn)Django已經(jīng)幫我們實(shí)現(xiàn)了該功能,使用起來(lái)也是非常的方便易用。那就是利用django-admin自定義命令,使用它,就可以使用ORM框架對(duì)model進(jìn)行操作,如:定時(shí)更新數(shù)據(jù)庫(kù),檢測(cè)數(shù)據(jù)庫(kù)狀態(tài)….. 然后將自定義命令加入到crontab任務(wù)列表中即可。