我为我的应用程序实现了基本分页,我一次显示5个项目(ndb.Model)。我使用下面的代码查询它们,
fetched_resutls,next_cursor, more = Content.query(Content.user_email == user_email).order(-Content.sent_time).fetch_page(5, start_cursor=cursor)
当用户删除项目时,我使用下面的代码删除项目并重新查询前五项。我传递一个空光标删除。在此重新查询期间,虽然有更多项目,但next_cursor为None。任何人都可以解释原因吗?
contentIntId = int(content_id)
content = Content.get_by_id(contentIntId)
content.key.delete()
fetched_results, next_cursor = Content.find_by_email(user.email(), cursor)
如果我在它之前没有删除的情况下进行简单的重新查询,那么我确实得到了下一个光标。
-----编辑1 -------
find_by_email代码
def find_by_email(cls, user_email, cursor):
fetched_resutls,next_cursor, more = Content.query(Content.user_email == user_email).order(-Content.sent_time).fetch_page(5, start_cursor=cursor)
li = []
ep = None
for p in fetched_resutls:
ep = p.to_dict()
ep['id'] = str(p.key.id())
li.append(ep)
next_bookmark = None
if more:
next_bookmark = next_cursor.to_websafe_string()
return li, next_bookmark
活动顺序