【问题标题】:How can I get the required data?如何获得所需的数据?
【发布时间】:2017-08-27 09:45:10
【问题描述】:
    ref = Database.database().reference()

    let currentUserID = Auth.auth().currentUser?.uid

    let userRef = ref.child("users").child(currentUserID!)

    let userRefQuery = userRef.queryOrdered(byChild: "requests").queryEqual(toValue: "received")

    userRefQuery.observeSingleEvent(of: .value, with: { (snapshot) in

        if (snapshot.value is NSNull) {

            print("no data found")
            return
        }

        print("value:")
        print(snapshot.value)

        print("key:")
        print(snapshot.key)

    })

Firebase Database

如何在“requests”下获取值为“received”的用户的用户 ID。因为它也可能被“发送”。目前,我没有收到任何数据!

【问题讨论】:

  • 您需要将您的 Firebase 数据库作为屏幕截图发布。
  • 嘿@MattHarris!我已经编辑了我的帖子。您现在可以查看我的 firebase 数据库。
  • 在 if 之前添加 print(snapshot) 看看输出是什么?
  • 嘿@3stud1ant3!我正在获取当前用户的用户 ID
  • 将 .value 替换为 .childAdded 看看 print(snapshot) 的输出是什么

标签: swift firebase swift3 firebase-realtime-database


【解决方案1】:

这就是我的工作方式:

ref = Database.database().reference()

let currentUserID = Auth.auth().currentUser?.uid

refHandle = ref.child("users").child(currentUserID!).observe(.value, with: { (snapshot) in

    print(snapshot)

    if let userDict = snapshot.value as? [String: Any] {

        if let requests = userDict["requests"] as? [String: String] {

            print(requests)

            for request in requests {

                if request.value == "sent" {

                    self.userIDs.append(request.key)
                    print(request.key)

                }

            }

        }


    }

}

【讨论】:

    【解决方案2】:

    对于您删除的问题,而不是:

    char temp = s[start]

    char temp = s[i];

    【讨论】:

    • 是的,但这会跳过所有空格。我不希望那样。我只想在新行的开头跳过空格。无论如何,非常感谢
    • char temp = s[i] + ' ';将添加空格。如果您还删除了 cout
    • 我一直在寻找不同的东西,但没有得到它。还是非常感谢!
    猜你喜欢
    • 2017-09-27
    • 2021-12-07
    • 2013-10-16
    • 2019-05-02
    • 2019-09-24
    • 2020-12-28
    • 2021-11-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多