2013-02-27 36 views
3

我在django芹菜中使用數據庫後端。任務信息存儲在數據庫中名爲celery_taskmeta的表中。 這是我的任務:是否可以顯示django芹菜任務的進度條?

@celery.task 
def file_transfer(password, source12, destination): 
    result = subprocess.Popen(['sshpass', '-p', password, 'rsync', '-az', source12, destination], 
            stderr=subprocess.PIPE, stdout=subprocess.PIPE).communicate()[0] 
    return result  

我打電話的任務是這樣的:

file_transfer.s(password, source12, destination) 

現在我想告訴用戶他們的任務,剩餘時間在Django模板的進度。我怎樣才能做到這一點?

+0

不,它不是話題可能是相同的,但答案不是很在那個問題上清楚。 – pynovice 2013-02-27 02:39:47

+0

爲什麼你總是把我的問題標記爲否定的?你對我有些怨恨嗎? – pynovice 2013-02-27 09:14:06

回答

7

也許我的回答Django-Celery progress bar是幫助(還貼出代碼DjangoSnippets,這就是我說的幾行http://djangosnippets.org/snippets/2898/多麼自豪)

+0

你是作家嗎?我怎樣才能實現這個? – pynovice 2013-02-28 11:03:42

+0

是的,我。我使用AJAX通過輪詢(0.5s間隔)poll_state視圖,然後使用它爲內部div的'width'CSS屬性提供的百分比(如在

中爲實現長時間運行的作業實施了一個進度條。這麼長時間BTW,我沒有看到你的問題前:( – 2013-04-04 14:24:28

+0

感謝您的片段,是否有可能爲您分享前端代碼? – Demonedge 2016-05-10 03:39:25