我想在文档中添加一个集合,我在谷歌搜索了很多,但我没有找到任何正确的解决方案。 甚至搜索过firebase文档,但我的查询没有结果。
我尝试过不同的方法将一个集合添加到文档中,下面是我的代码示例。
let tmpObj = {
title: vm.pageTitle,
creationDate: dt.getTime()
};
this.db.collection("pages").doc("page_"+this.bookId).collection("Test").add(tmpObj);
另外,我甚至试过
let mainCollection = this.db.collection("pages").doc("page_"+ this.bookId).collection("test").valueChanges();
let subcollection = mainCollection.push(tmpObj);
// This is also not working for me
在上面的代码中 db 是公共数据库:AngularFirestore 请查看附带的屏幕截图,了解我要添加集合的位置(突出显示)。
我需要的结构是收藏 - >文件 - >集合
答案 0 :(得分:1)
以下代码足以满足我的需求,现在我可以使用此代码在每个文档中创建尽可能多的嵌套集合。
tmpObj = {
title: vm.pageTitle,
desc: description,
creationDate: dt.getTime()
}
this.db.collection('pages').doc("pages_"+ this.bookId).collection<any>("AllPages").doc("page_"+ dt.getTime()).set({tmpObj})
.then(function() {
console.log("Pages Created successfully!");
})
.catch(function(error) {
console.error("Error writing document: ", error);
});
答案 1 :(得分:0)
请尝试使用此模板
await this.db.collection('mainCollectionName').doc("mainDocID").set(obj);
await this.db.doc('mainCollectionName/mainDocID').collection('subCollectionName').doc('subDocumentID').set(subCollectionObj);