Python 我可以使用回调在网页上逐步显示查询结果吗?

Python 我可以使用回调在网页上逐步显示查询结果吗?,python,tornado,Python,Tornado,我正在使用tornado 2.3(Python2.7.3),并且正在对postgresql(9.2.1)数据库运行大量查询。这大约需要8秒钟才能完成,我想知道是否可以使用回调(使用momoko connector到postgres)来逐步用查询结果更新页面。我在tornado demos文件夹中找到了facebook示例,但这需要单击刷新-但我希望在检索查询结果时调用UI模块进行渲染 当前(未完成)代码如下所示: results = OrderedDict() cursor =

我正在使用tornado 2.3(Python2.7.3),并且正在对postgresql(9.2.1)数据库运行大量查询。这大约需要8秒钟才能完成,我想知道是否可以使用回调(使用momoko connector到postgres)来逐步用查询结果更新页面。我在tornado demos文件夹中找到了facebook示例,但这需要单击刷新-但我希望在检索查询结果时调用UI模块进行渲染

当前(未完成)代码如下所示:

    results = OrderedDict()
    cursor = yield gen.Task(self.db.execute, 'select location, string_of_words from source;')
    for verse in cursor.fetchall():
        queries = {}
        id = 0
        for word in verse[4].split(' '):
            queries[id] = ['select worddetailsbyword(%s)',(word,)]
            id += 1
        cursors = yield gen.Task(self.db.batch, queries)
        for key,cursor in cursors.items():
            worddata = {}
            if verse[0] not in results.keys():
                results[verse[0]] = []                                              
            results[verse[0]].append(cursor.fetchone())

    for loc, words in results.items():
        self.write("<h2>%s</h2>" % loc)
        for word in words:
            self.write("<div>%s</div>"%word[0])
results=OrderedDict()
cursor=yield gen.Task(self.db.execute,'select location,string_of_words from source;')
对于cursor.fetchall()中的韵文:
查询={}
id=0
对于第[4]节中的单词,拆分(“”):
查询[id]=[“选择worddetailsbyword(%s)”(word,)]
id+=1
游标=生成gen.Task(self.db.batch,查询)
对于键,光标位于游标中。项()
worddata={}
如果[0]节不在results.keys()中:
结果[第[0]]=[]
结果[verse[0]].append(cursor.fetchone())
对于loc,results.items()中的单词:
self.write(“%s”%loc)
用文字表示:
self.write(“%s”%word[0])

我可以实现一个回调并让每个查询完成点击该回调并更新网页,而不是等待所有这些完成,然后在模板中呈现吗?

您使用的是ioloop.add\u timeout()您使用的是ioloop.add\u timeout()