使用 Cloud Firestore 中存储的分层数据时,子集合允许组织文档内的数据。但是,使用客户端 SDK 获取这些子集合的列表可能具有挑战性。
Firestore 文档明确指出,Web 或移动客户端库不支持检索集合列表(包括子集合)。此限制的存在是为了保护敏感数据并防止意外访问。
客户端限制:
在客户端 SDK 中,使用 get() 检索文档时,只有该文档的直接字段可用。子集合名称不会包含在文档数据中。
服务器端解决方案:
服务器端 SDK 则提供列出集合 ID 的方法。例如,在 Node.js 中,firestore.v1beta1.ListCollectionIds 方法提供了一种从给定文档路径检索子集合名称的方法。此方法将文档路径作为参数,并返回一个集合 ID 数组,包括子集合名称。
替代数据结构:
如果访问子集合名称对于您的应用程序中,请考虑重组您的数据以利用可预测的子集合名称。这种方法消除了依赖动态检索子集合列表的需要。
总之,虽然目前使用客户端 SDK 在 Firestore 文档中列出子集合不可行,但服务器端 SDK 为可信环境提供了替代解决方案需要这样的功能。
以上是如何列出 Cloud Firestore 文档中的子集合?的详细内容。更多信息请关注PHP中文网其他相关文章!