我有几个关于如何使用 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
问题:
- 首先,在for循环的不同迭代中使用同一个游标时,结果集是如何推进的?
- 如何解决边界问题? for 循环应该在 3 次迭代后终止。第 4 批是空的。
- 如何在 gae 中反向翻页(即返回而不是下一步)?
最佳答案
关于python - 使用谷歌应用引擎分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6085257/