所以我已經環顧了很多,但找不到一個好的答案。 我使用Celery 3.1.7和Django 1.5.1,沒有django-celery包,因爲Celery的新版本不再需要它。 我設法設置了任務並使用RabbitMQ執行它們。一切都在工作,因爲它應該在那裏。不過,我正在將其融入一個現有的,相當龐大的Django項目中。在那裏,我們指定了幾個Django設置文件,而不僅僅是一個。我們根據環境運行不同的環境,例如本地機器和服務器。我的問題是,我似乎無法追蹤哪個設置文件是從我的項目根目錄中運行celery.py文件(如文檔指定的)的芹菜工作者處於「活動狀態」。有文件要求指定Django的設置文件是這樣的:芹菜工作人員的活動Django設置文件
os.environ.setdefault('DJANGO_SETTINGS_MODULE', "project.settings.server")
現在這個工作,但如果我在本地移動的東西,我需要將其更改爲settings.local
,使其工作,而每一次。在運行時讀取設置對象就像我在標準Django文件中做的一樣,因爲芹菜工作者在不同的進程中執行。 因此,使用這種情況下,有沒有人有任何想法如何從芹菜工人動態獲取活動的Django設置文件?或者,當啓動芹菜工作人員時可能將其作爲變量傳入? (如Django等--settings = project.settings.local) 謝謝!
爲什麼downvote?它解決了這個問題。 – olofom
我其實很喜歡這種方式,看起來像個不錯的開始!非常感謝! – MaRiNkO
不適用於我 – Nirri