如何引用Firebase实时数据库中另一个数据库条目中的某些信息,并提供来自c的一些信息



我有一个这样的火力基地条目:

ID111
     nconfirmations: 4

安托赫是这样的:

ID222
     sender_identifier: 111

我想制定一个 firebase 规则,一旦 ID222 设置为能够读取的内容,该规则就会引用 ID111 内容。

我试过这个:

{
   "rules": {
     "Chat": {
       "$uid": {
         ".read":  "auth!=null
          && ($uid.contains(data.child('sender_identifier').val()
          && (root.child('Chat/'ID'+root.child('Chat/$uid/sender_identifier').val()/nconfirmations').val()>=2)) ",   

$uid.contains(data.child('sender_identifier').val()

我可以做提到的限制,只有 ID222 是可以读取的,因为它有"111",但如果我这样做,看起来我不能再引用任何带有数据的条目,此时数据仅指 ID222 条目。

我尝试使用根路径访问内容,如规则所示,但它就是不飞。

如果规则正常工作,我想它应该给出预期的结果,因为'ID'+root.child('Chat/$uid/sender_identifier').val()应该返回"ID111"。

怎么能做到这一点呢?甚至可能吗?

看起来语法不正确:

root.child('Chat/'ID'+root.child('Chat/$uid/sender_identifier').val()/nconfirmations').val()

我最好的猜测是你正在尝试做:

root.child('Chat/ID'+root.child('Chat/$uid/sender_identifier'(.val((+'/nconfirmations'(.val((

这将在验证中使用路径/Chat/ID.../nconfirmations中的值,...是从/Chat/$uid/sender_identifier读取的值。

如果这不是问题所在,请使用读取数据的最小完整代码以及作为文本进行验证的实际 JSON 来更新您的问题。您可以通过点击 Firebase 数据库控制台上溢出菜单 (⠇( 中的"导出 JSON"链接来获取此信息。

最新更新