Firebase Firestore规则:地图数组
我的数据中有以下体系结构:Firebase Firestore规则:地图数组,firebase,google-cloud-firestore,firebase-security,Firebase,Google Cloud Firestore,Firebase Security,我的数据中有以下体系结构: roles : 0 : id : xxx name : xxx 1 : id : xxx name : xxx 我想要一个规则,允许我检查用户ID是否等于角色数组中的一个ID,有人有主意吗 谢谢你,祝你今天愉快 这种数据结构是不可能的 一个选项是将“id”值复制到仅包含这些字符串的数组字段中 roleIds: 0: id-string-0 1: id-string-1
roles :
0 :
id : xxx
name : xxx
1 :
id : xxx
name : xxx
我想要一个规则,允许我检查用户ID是否等于角色数组中的一个ID,有人有主意吗
谢谢你,祝你今天愉快 这种数据结构是不可能的 一个选项是将“id”值复制到仅包含这些字符串的数组字段中
roleIds:
0: id-string-0
1: id-string-1
然后,要检查id
是否在该列表中,您可以使用:
因此,一个解决方案是创建两个列表,一个带ID,一个带名称?如果您还需要名称,您可以这样做。我只显示id字符串,因为这些是规则所必需的。
allow read: if resource.data.roleIds.hasAny([id]);