前言
在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公開的問題上看看有沒有相似的。
總結
道路千萬條, 零錯第一條。 百度沒答案, 想想別的法