In Cloud Firestore规则 - 我有一个文档,名为task
,我想查看某些数据(assignee
字段)是否为空/不存在。在云Firestore规则中 - 如何检查密钥是否为空
我已经试过:
resource.data.assignee == null
- 不工作(错误)!resource.data.hasAll(['assignee'])
- 不工作(错误)
从文档 - 它指出,这确实创建一个错误: // Error, key doesn't exist allow read: if resource.data.nonExistentKey == 'value';
以下是完整的规则文件 - https://github.com/Metaburn/doocrate/blob/master/firestore.rules 据我所知'resource'是一个文档,因为我使用'匹配/任务/ {anyTask} {' 从资源上的firebase文档 - https://firebase.google.com/docs/firestore/reference/security/#resource_1 –
我不需要检查文档 - 我知道文档在那儿。 我想检查该文档中的字段。 因此对于'/ tasks/my-task' - 'tasks'是集合。 'my-task'是文件。并且里面有一个字段'assignee' - 我想看看它是否为空,我不能 –
有一个'resource.data.keys()'函数,尝试使用'hasAll(['assignee'] )'而不是。 – Callam