【问题标题】:flutter firebase how do I get all the children of a nodeflutter firebase 如何获取节点的所有子节点
【发布时间】:2018-09-22 18:16:20
【问题描述】:

我对使用 dart 和 firebase 不是很熟悉,我想知道如何获取某个节点的所有子节点以及如何检查节点是否存在

【问题讨论】:

  • 请在您的问题中以文本形式包含相关代码和错误。链接到图像会损害我们回答您问题的能力,并且使用图像作为代码或错误消息会使搜索类似错误变得不可能。如果您有任何问题,请查看How to create a Minimal, Complete, and Verifiable example
  • 谢谢你,下次我问问题@StefanCrain 时,我会确保记住这一点
  • 您可以在发布后使​​用edit 按钮进行更改。

标签: firebase firebase-realtime-database dart flutter


【解决方案1】:

如果您获得用户列表,则类似这样:

static Future<int> getUserAmount() async {
  final response = await FirebaseDatabase.instance
      .reference()
      .child("Users")
      .once();
  var users = [];
  reponse.value.forEach((v) => users.add(v));
  print(users);
  return users.length;
}

您可以通过users检查您需要检查的内容,然后返回结果;

【讨论】:

    【解决方案2】:

    如果您只想要下面示例的父级名称:

    https://i.stack.imgur.com/NjxbJ.png

    我会使用 Günter Zöchbauer 的代码并稍作修改。结果将是:user = [A,B,C,D,E,LIVRE] 长度为 5。

    Future  getUserAmount() async
      {
        final database = await FirebaseDatabase.instance
          .reference()
          .child("CHILD1/ana/exercicios/")
          .once();
          
        List <String> users = [];
    
        database.value.forEach((key,values) => users.add(key)); 
    
        print(users);
        print(users.length);
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-12
      • 2012-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多