我有以下代码,效果很好:
comments = PersonComment.gql('WHERE ANCESTOR IS :parent AND verified=True ORDER BY added DESC', parent=person_key).fetch(PAGE_SIZE_COMMENTS+1, (page)*PAGE_SIZE_COMMENTS)
我想将其替换为:
comments = db.Query(PersonComment)
comments.ancestor(person_key)
comments.filter('verified = ', True)
comments.order('-added')
comments.fetch(PAGE_SIZE_COMMENTS+1, (page)*PAGE_SIZE_COMMENTS)
但它不起作用。有什么问题?
答案 0 :(得分:5)
fetch
返回结果集; comments
仍然是Query对象。你可以这样做:
comments = comments.fetch(PAGE_SIZE_COMMENTS+1, (page)*PAGE_SIZE_COMMENTS)
或者将您的查询对象称为其他内容以避免混淆。
顺便说一句,使用带偏移的fetch进行分页实际上效率很低。考虑使用query cursors。