Firebase Realtime数据库中的可查询相关列表

时间:2018-08-17 09:05:07

标签: firebase firebase-realtime-database

在我的应用中,用户可以在best practices之后创建人工制品,这些人工制品存储在用户对象外部,但是他们仍将用户用作密钥,以便至少可以在不进行查询的情况下对其进行检索。

{
  user:{
    one: {...},
    two: {...},
    ...
  },
  artefacts: {
    one: {
      asfasdfsakf: {
        date: 12345,
        ...
      },
      olidfalksfa: {
        date: 23456,
        ...
      },
      ...
    },
    two: {
      ewoljnfaskl: {
        date: 34567,
        ...
      },
      odsafosdfaf: {
        date: 45678,
        ...
      },
      ...
    },
    ...
  }
}

但是,例如,如果我想查询所有文物而不管其所有者如何,删除旧文物怎么办? 用于查询的文档非常差,但是我知道您可以在查询中添加变量(var),但仍然无法使其正常工作。

更新

虽然我认为如果我删除了用户密钥内的嵌套内容,将无法确保对视频的访问权限,但实际上看起来我可以通过这种方式对其进行保护:

"artefacts": {
  ".read": true,
  ".write": true,
  "$aid": {
    ".read": "data.child('uid').val() === auth.uid",
    ".write": "data.child('uid').val() === auth.uid"
  }
}

0 个答案:

没有答案