如何为多个子节点设置相同的规则

时间:2019-11-13 18:23:31

标签: firebase firebase-realtime-database firebase-security

我正在使用Firebase开发一个Android应用程序。我有一个这样的用户数据库-

user:{
      uid:{
           uname:user1,
           email:user1@gmail.com,
           phone:1234567890,
           level:20,
           score:50
          } 
      }

我将读取和写入的“得分”节点都设置为false。我将其他节点的读写规则都设置为true。两者都很好。       但是每个用户节点下都有许多子节点。因此,我必须为每个子节点编写读写规则。除“得分”节点外,其他节点具有相同的规则。是否有一些方法可以为多个子节点设置相同的规则,而无需为每个节点编写规则。

1 个答案:

答案 0 :(得分:1)

您可以使用$变量来匹配所有尚未明确匹配的节点。因此,对于您的用例,应该是这样的:

{
  "rules": {
    "users": {
      "$uid": {
        "score": {
          // these rules apply to score
        },
        "$others": {
          // these rules apply to all other child nodes/properties
        }
      }
    }
  }
}