【问题标题】:Is it possible to show progress bar of django celery task? [duplicate]是否可以显示 django celery 任务的进度条? [复制]
【发布时间】:2013-02-12 17:22:24
【问题描述】:

我在 django celery 中使用数据库后端。任务信息存储在数据库中名为:celery_taskmeta 的表中。 这是我的任务:

@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 模板中的任务进度和剩余时间。我怎样才能做到这一点?

【问题讨论】:

  • 不,不是主题可能相同,但该问题的答案不是很清楚。
  • 你为什么总是将我的问题标记为否定?你对我有什么怨恨吗?

标签: django celery django-celery djcelery


【解决方案1】:

也许我对Django-Celery progress bar 的回答会有所帮助(还将代码发布到DjangoSnippets,这就是我为那几行http://djangosnippets.org/snippets/2898/ 感到自豪)

【讨论】:

  • 你是作者吗?我该如何实施?
  • 是的,我是。我使用 AJAX 通过轮询(0.5 秒间隔)poll_state 视图,然后使用它为内部 div 的“宽度”CSS 属性提供的百分比(如
    。抱歉花了这么长时间顺便说一句,我之前没有看到你的问题:(
  • 谢谢sn-p,前端代码也可以分享一下吗?
  • Demonedge:恐怕我已经没有了。 IIRC,我只是在一个 div 中有一个 div,它的 width 设置为每秒左右从后端检索的百分比值。
猜你喜欢
  • 1970-01-01
  • 2012-01-22
  • 2011-11-14
  • 2017-06-16
  • 1970-01-01
  • 2014-05-04
  • 2015-02-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多