python - 使用谷歌应用引擎分页

标签 python google-app-engine

我有几个关于如何使用 gae 进行分页的问题。测试代码:

    for i in range(0, 6):
        MyClass(myProperty=unicode(i)).put()
    q = MyClass.all()
    cursor = None
    print
    haveMore = True
    batchSize = 2
    i = 1
    while haveMore:
        print 'Batch', i
        i = i + 1
        result_set = q.with_cursor(start_cursor=cursor).fetch(batchSize)
        for obj in result_set:
            print obj.myProperty
        cursor = q.cursor()
        print cursor
        haveMore = True if len(result_set) == batchSize else False

输出:

Batch 1
0
1
E9oBTgoMdGVzdGJlZC10ZXN0GgdNeUNsYXNzIUNVUlNPUiFqHWoMdGVzdGJlZC10ZXN0cg0LEgdNeUNsYXNzGAIMggENCxIHTXlDbGFzcxgCDOABABQ=
Batch 2
2
3
E9oBTgoMdGVzdGJlZC10ZXN0GgdNeUNsYXNzIUNVUlNPUiFqHWoMdGVzdGJlZC10ZXN0cg0LEgdNeUNsYXNzGAQMggENCxIHTXlDbGFzcxgEDOABABQ=
Batch 3
4
5
E9oBTgoMdGVzdGJlZC10ZXN0GgdNeUNsYXNzIUNVUlNPUiFqHWoMdGVzdGJlZC10ZXN0cg0LEgdNeUNsYXNzGAYMggENCxIHTXlDbGFzcxgGDOABABQ=
Batch 4

问题:

  1. 首先,在for循环的不同迭代中使用同一个游标时,结果集是如何推进的?
  2. 如何解决边界问题? for 循环应该在 3 次迭代后终止。第 4 批是空的。
  3. 如何在 gae 中反向翻页(即返回而不是下一步)?

最佳答案

关于python - 使用谷歌应用引擎分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6085257/

相关文章:

python - 我正在尝试使用 Python 在 jar 文件中搜索 '.class' 文件

python - 使用 os.popen() 或子进程执行函数

python - 代码在本地主机上运行,​​但在使用 Google App Engine 部署时不起作用

google-app-engine - 迁移 App Engine 使用 Google Cloud Load Balancer 导致约 1 小时的停机时间

python - 如何使用 Selenium 提取标签内值属性的文本

python - 如何将 Pandas 系列转换为时间系列?

google-app-engine - 如何成为 Google Appengine 管理员用户(登录 : admin in app. yaml)

python - 不同配置格式的优缺点?

python - 在 Google 应用引擎 (gae) 中针对每个请求验证用户的最佳实践是什么?或者如何避免数据库访问?

python - 在语料库 Python 中查找损坏的文件