在 Firebase Cloud Firestore 中,我在集合中有“user_goals”,目标可能是预定义的目标(master_id:“XXXX”)或自定义目标(没有“master_id”键)
在 JavaScript 中,我需要编写两个函数,一个获取所有预定义目标,另一个获取所有自定义目标。
我有一些解决方法来通过将“master_id”设置为“”空字符串来获得自定义目标,并能够获得如下:
db.collection('user_goals')
.where('challenge_id', '==', '') // workaround works
.get()
Run Code Online (Sandbox Code Playgroud)
这仍然不是正确的方法,我继续将其用于预定义的目标,其中它具有“master_id”,如下所示
db.collection('user_goals')
.where('challenge_id', '<', '') // this workaround
.where('challenge_id', '>', '') // is not working
.get()
Run Code Online (Sandbox Code Playgroud)
由于 Firestore 没有 "!=" 运算符,我需要使用 "<" 和 ">" 运算符,但仍然没有成功。
问题:忽略这些变通方法,通过检查特定字段是否存在来获取文档的首选方法是什么?