如何从Firestore中的筛选文档中获取子集合中的数据


let db = admins.firestore();
let filter = JSON.stringify(req.body.foodid);
**db.collection("AllFood").where("foodid","==",filter).collection("Ingredient")**.get().then(foodmenus => {res.send('{"STATUS":"SUCCESS","data":' + JSON.stringify(foodmenus.docs.map(doc => doc.data())) + '}');

如何获取属于集合"AllFood"中文档的"foodid"的Ingredient集合。

我假设您的查询返回一个唯一的文档。由于Firestore中的查询是浅层的,因此需要首先获取查询对应的Document,然后查询该Document的Ingredient子集合中的所有Document,如下所示:

let db = admin.firestore();
let filter = JSON.stringify(req.body.foodid);
db.collection("AllFood").where("foodid", "==", filter)
.get()
.then(snapshot => {
const docSnapshot = snapshot.docs[0];  //The first (and unique) doc returned by the query
return docSnapshot.ref.collection("Ingredient").get();
})
.then(foodmenus => {
res.send('{"STATUS":"SUCCESS","data":' + JSON.stringify(foodmenus.docs.map(doc => doc.data())) + '}');
})

相关内容

  • 没有找到相关文章