在 Cloud Firestore 中,文档可以包含子集合,子集合本质上是嵌套在文档中的集合。要检索文档中子集合的名称,可以采用不同的方法,具体取决于您使用的是客户端 SDK 还是服务器端 SDK。
客户端 SDK
在客户端 SDK(例如 Web、iOS、Android)中,当前不支持获取子集合名称列表。根据 Firestore 文档:
使用移动/Web 客户端库无法检索集合列表。您应该仅将查找集合名称作为受信任服务器环境中管理任务的一部分。如果您发现在移动/Web 客户端库中需要此功能,请考虑重组您的数据,以便子集合名称是可预测的。
服务器端 SDK
开启另一方面,服务器端 SDK 提供了检索子集合名称的方法。例如,在 Node.js SDK 中,您可以使用 listCollectionIds 方法:
const {Firestore} = require('@google-cloud/firestore'); const firestore = new Firestore(); const documentRef = firestore.doc('rootCollection/aDocument'); documentRef.listCollections().then((collections) => { const subcollectionNames = collections.map(collection => collection.id); console.log(subcollectionNames); // ['subCollection1', 'subCollection2'] });
其他选项
如果您需要在客户端检索子集合名称-side 环境,您可以考虑以下替代方法:
以上是如何在 Cloud Firestore 中列出子集合:客户端方法与服务器端方法?的详细内容。更多信息请关注PHP中文网其他相关文章!