【问题标题】:Update web page whilst processing data在处理数据的同时更新网页
【发布时间】:2012-08-18 19:12:51
【问题描述】:

我不太确定在这个主题上要搜索什么。

我有一个 Pylons 后端,它遍历数据库中的电子邮件地址列表,然后将它们显示在网页上。我想做的是有一个加载部分(因为还有一些其他过程需要很长时间)来显示当前正在处理的电子邮件地址。


“正在处理:example@internet.com”
“正在处理:example2@internet.com”

我愿意使用任何可用的技术,尽管我怀疑 AJAX 会是答案。我只是有点不知道该怎么办,好像我给前端网页返回了一些东西,这个过程就结束了!必须有某种并行处理,但我不知道如何去做。那么如何在屏幕上显示正在处理的电子邮件地址呢?

Python

emails = [a,b,c]
for x in emails:
   return x

Javascript

function displayProcess(email){
$('#emailDisplay').val(email)
};

【问题讨论】:

    标签: python ajax javascript-events parallel-processing pylons


    【解决方案1】:

    你不要循环列表,因为在第一次返回时你的循环被打破了。

    【讨论】:

      【解决方案2】:

      您应该为长期任务使用某种作业队列。 Celery 在 Python 世界中非常流行。 Jobs 可以将他们的状态报告给某种快速和临时的数据存储,比如Redis,并且 JavaScript 可以使用 AJAX 轮询这些状态,比如说,5 秒(我假设如果有什么事情发生并不重要) 2 或 5 秒前处理)。

      编辑

      澄清一下——在我描述的模型中,JavaScript 不会直接调用 Redis。它使用某种服务将所需数据转储为 JSON 或 XML。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-21
        • 2012-04-03
        • 1970-01-01
        • 1970-01-01
        • 2010-10-21
        • 1970-01-01
        相关资源
        最近更新 更多