好的,我会尽量准确地解释我的疑问,请耐心等待。 我正在创建一个名为部门的集合,每个部门都属于一所学校。我知道我可以做类似的事情:
-Departments
- [ID]:{
schoolID: [schoolID]
.....
}
然后按以下方式获取数据:
db.collection("Departments").where("schoolID", "==", someID)
但是,实际上,我正在尝试创建一个不同的结构,其中各部门已经是学校的子集,例如:
-Departments
- [SchoolID]:{
[departmentID]: {
.....
}
}
这样,我将使用以下方式获取所有数据:
db.collection("Departments").doc(schoolID).get()
现在,我有2个疑问:
如何实现第二种结构(可能使用Firestore自动生成的ID)?到现在为止,它基本上会向我的doc对象添加属性,我不认为这是要走的路。同时,我阅读了子集合还不是防弹解决方案
关于性能和要下载的数据,我可以保留结构nr。 1,使用get()。where()并获得与我的(假设)解决方案2基本相同的结果?