我如何使用 Google 数据存储从查询中查找实体总数
How I find the total entities from a query, using Google Datastore
我有一个像这样的 Python 脚本可以与 Google Cloud DataStore
一起使用
def implicit():
query = client.query(kind='task')
query.add_filter('status', '=', True)
query_iter = query.fetch()
print(query_iter.num_results)
for entity in query_iter:
print(entity['title'])
我已经向 DataStore 中插入了 5 个 'task' 实体,它仍然打印出标题,但是,我得到的 query_iter.num_results 是 0,它应该是 5。我的代码有什么问题吗?
感谢和问候
num_results 将 return 从迭代器 you have consumed 中得到多少结果。因此,要在迭代结果之前获取结果总数,您需要将迭代器转换为列表,即 query_results = list(query.fetch())。然后 len(query_results) 将有结果总数。
我有一个像这样的 Python 脚本可以与 Google Cloud DataStore
一起使用def implicit():
query = client.query(kind='task')
query.add_filter('status', '=', True)
query_iter = query.fetch()
print(query_iter.num_results)
for entity in query_iter:
print(entity['title'])
我已经向 DataStore 中插入了 5 个 'task' 实体,它仍然打印出标题,但是,我得到的 query_iter.num_results 是 0,它应该是 5。我的代码有什么问题吗?
感谢和问候
num_results 将 return 从迭代器 you have consumed 中得到多少结果。因此,要在迭代结果之前获取结果总数,您需要将迭代器转换为列表,即 query_results = list(query.fetch())。然后 len(query_results) 将有结果总数。