前言
在Celery4.0之前的版本中,有一個專門供Django使用的Celery版本django-celery.但現在Celery已經統一為一個版本,是以直接安裝原生的Celery即可。這裡就暫時不說Celery的使用方法了,改天專門寫。今天隻說說django-celery-results。
作用
這個擴充允許您使用Django ORM存儲Celery任務結果。
它定義了一個用于存儲任務結果的模型(django_celery_results.models.TaskResult),您可以像查詢其他Django模型一樣查詢這個資料庫表。
安裝
直接pip安裝:
pip install django-celery-results```
源碼安裝:從[GitHub](http://pypi.python.org/pypi/django-celery-results)下載下傳最新版本的django-celery-results,然後通過執行以下操作來安裝它
$ tar xvfz django-celery-results-0.0.0.tar.gz
$ cd django-celery-results-0.0.0
$ python setup.py build
`
遷移---坑王駕到
一般建議
python manage.py migrate django_celery_results
,但我個人建議還是先
python manage.py makemigrations
,然後再migrate。如果順利的話,那肯定是美滋滋,但問題是不順利(悲痛的表情)
我自己遇到的問題如下:
遷移檔案有錯,然後本人就習慣性的打開了百度。各種關鍵詞搜尋,發現竟然沒有答案。然後就突然頓悟了,我還是自己盤他吧。然後又仔細的看了一遍這個錯誤,發現他告訴我的是
依賴項引用不存在的父節點
,然後我就打開了這個檔案,我的路徑是
C:\Python27\Lib\site-packages\django_celery_results\migrations\出錯的檔案
果不其然,與Error一樣,然後我就好奇。。。然後我應該幹啥呢(又一個悲痛的表情),突然我又頓悟了我還是去GitHub吧,真的發現了一個相似的問題,雖然她告訴的解決方法,對我沒用,但她說明了原因。
然後,我就嘗試着吧,
celery_results
改成了
django_celery_results
,然後儲存檔案,重新執行python mange.py meigrate。這次竟然沒報錯,但給了一個非常有用的警告,給了一條指令。
然後,就将這條指令跑了一邊,然後執行了一次migrate,就成功了,成功了。
問題很多,更多的問題,可以去
GitHub公開的問題上看看有沒有相似的。
總結
道路千萬條, 零錯第一條。 百度沒答案, 想想别的法