相关疑难解决方法(0)

如何获取 Firebase Cloud Firestore 中存在/不存在特定字段的文档?

在 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 没有 "!=" 运算符,我需要使用 "<" 和 ">" 运算符,但仍然没有成功。

问题:忽略这些变通方法,通过检查特定字段是否存在来获取文档的首选方法是什么?

javascript firebase google-cloud-firestore

34
推荐指数
5
解决办法
2万
查看次数