【发布时间】:2019-08-06 08:40:53
【问题描述】:
我想获取存储在我的 Firestore 数据库中的所有集合。我浏览了文档,发现如果您使用的是 Node.js 服务器 SDK,则可以使用 DocumentReference 上的 getCollections() 方法。与此等效的 Python 是什么?
【问题讨论】:
标签: firebase google-cloud-firestore firebase-admin
我想获取存储在我的 Firestore 数据库中的所有集合。我浏览了文档,发现如果您使用的是 Node.js 服务器 SDK,则可以使用 DocumentReference 上的 getCollections() 方法。与此等效的 Python 是什么?
【问题讨论】:
标签: firebase google-cloud-firestore firebase-admin
Python SDK 有一个Client.collections method,它列出了所有顶级集合。
一旦你有了一个文档,你可以通过调用DocumentReference.collections method来获取它的子集合。
【讨论】:
google cloud Python SDK Client.collections
我使用这个 python sn-p 进入顶级集合“my-collection”并找到具有特定“id”的文档。在该文档中,我想检索最后一个子集合的文档,因为它们包含我正在搜索的数据的最后一个版本。
fs = firestore_v1.Client()
collection = fs.collection("my-collection")
doc = collection.document("id")
sub_collections = doc.collections()
*_, last = sub_collections
sub_docs = last.stream()
for doc in sub_docs:
print(doc.to_dict())
注意:您必须在顶级文档中创建一个“虚拟”条目,否则根集合和底层子集合之间没有链接。
【讨论】: