首页 > web前端 > js教程 > 如何在 Cloud Firestore 中列出子集合:客户端方法与服务器端方法?

如何在 Cloud Firestore 中列出子集合:客户端方法与服务器端方法?

Linda Hamilton
发布: 2024-11-30 07:11:11
原创
309 人浏览过

How to List Subcollections in Cloud Firestore: Client vs. Server-Side Approaches?

如何列出 Cloud Firestore 文档中的子集合

在 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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板