如果父节点的密钥未知,则检查嵌套子节点是否具有值(例如,Firebase生成的UID)

时间:2017-10-08 17:58:40

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

My Firebase Structure

我正在尝试查询firebase结构化数据,我想在其中找出特定嵌套节点是否包含值。附上的图像是我的结构。请参考图。

现在我的问题是

我想检查作为子def longest_substring(s1): res = [] for i in range(len(alpha) - 2): for k in range(i + 2, len(alpha)): if alpha[i:k] in s1: res.append(alpha[i:k]) return max(res, key=len) 节点的tag属性是否具有值confession,但我不知道{{1}的父键节点(即Firebase生成的UID)*。那我怎么查询呢?

我应该如何遍历以访问BE_CS_B_boy节点以在Firebase中查询它。因为要转到confession节点,我需要通过tag节点并通过tag节点我需要提到父密钥(在这种情况下,它是Firebase生成的UID)

注意:我的根节点名称为confession,如附图所示。请参考图。

1 个答案:

答案 0 :(得分:0)

在Firebase实时数据库中无法实现。

备选方案(以及Firebase实时数据库的思维方式)是创建另一个根级节点,其中包含您需要检索的信息,例如:

vconfess
  - confessions_in_tags
    - tag_id
      - confession_id_1
      - confession_id_2

并且,通过这样做,您必须保持非规范化数据的同步。