我正在使用 flutter 制作一个移动应用程序,并以 firebase 作为后端。
我有一个存储用户信息的用户文档集合。其中一个字段是一组引用(另一个集合中的引用文档),我想在像批处理这样的操作中使用它,然后允许读取所有文档。
我知道批处理只允许写入数据库,我的第二个选择是事务,它需要在读取后写入,这是我试图避免的。
有没有一种方法可以在一次操作中读取多个文档而无需使用事务?
Firestore 不提供正式的批量读取 API。正如弗兰克在评论中提到的,有一种方法可以使用IN https://firebase.google.com/docs/firestore/query-data/queries#in_and_array-contains-any使用 ID 从单个集合中获取多个文档。但是,所有文档必须位于同一集合中,并且每个查询不能超过 10 个文档。您不妨单独获取每个文档,因为IN
查询有局限性,并且不能保证执行速度比个人获得的速度快。这两种解决方案都不能保证“一致”,因此在任何给定时刻,获取的任何一个文档都可能比其他文档“更新鲜”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)