Firebase 在Flatter firestore中获取currentUser文档的每个子集合
我想要的是获取当前用户文档中的所有子集合。实施方法是什么?这些子集合包含包含数据的其他文档。我只想获取子集合,以便显示当前用户向其发送消息的用户(而不是文档中的聊天/数据)Firebase 在Flatter firestore中获取currentUser文档的每个子集合,firebase,flutter,dart,firebase-realtime-database,google-cloud-firestore,Firebase,Flutter,Dart,Firebase Realtime Database,Google Cloud Firestore,我想要的是获取当前用户文档中的所有子集合。实施方法是什么?这些子集合包含包含数据的其他文档。我只想获取子集合,以便显示当前用户向其发送消息的用户(而不是文档中的聊天/数据) 从打印屏幕上看,子集合名称似乎是动态创建的,即您事先不知道它们 对于客户端SDK(包括Flatter插件),没有允许列出文档子集合的方法。请参阅:“使用移动/web客户端库无法检索集合列表” 以下是两种常见的解决方法: 将子集合的名称保存在父文档的字段中,例如Array类型的字段。然后需要查询父文档,读取此字段的值,迭代数
从打印屏幕上看,子集合名称似乎是动态创建的,即您事先不知道它们 对于客户端SDK(包括Flatter插件),没有允许列出文档子集合的方法。请参阅:“使用移动/web客户端库无法检索集合列表” 以下是两种常见的解决方法:
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
exports.getSubCollections = functions.https.onCall(async (data, context) => {
const docPath = data.docPath;
const collections = await admin.firestore().doc(docPath).listCollections();
const collectionIds = collections.map(col => col.id);
return { collections: collectionIds };
});