当前位置: 首页 > 面试题库 >

带有childKey的Firebase queryEqualToValue

龚镜
2023-03-14
问题内容

我正在尝试使用以下方法查询Firebase数据库中的数据:

queryEqual(toValue: Any?, childKey: String?)

我的数据库结构:

Schools {
    testUID1 {
        schoolNameLC: test school 1
    }
}

我的查询是:

databaseReference.child("Schools").queryEqual(toValue: "test school 1", childKey: "schoolNameLC").observe(.value) { (snap) in
        print(snap)
    }

此查询打印出来null,我不能完全正常工作。由于我的应用设置方式不同,因此我不知道该键的父键下schoolNameLC有一个值。我要做的就是在数据库中搜索,然后返回任何值为的内容。testSchool1``testUID1``Schools``schoolNameLC``test school 1


问题答案:

不幸的是,两个参数queryEqualToValue:childKey:(以及它的brethren
queryStartingAtValue:childKey:queryEndingAtValue:childKey:)是Firebase
Database API中一些最容易被误解的方法。

要按孩子排序,然后过滤该孩子的值,您必须致电queryOrderedByChild().queryEqualToValue()。因此,如@
ElCaptainV2.0所说:

databaseReference.child("Schools")
    .queryOrderedByChild("scho‌​olNameLC")
    .queryEqua‌​lToValue("test school 1")

childKey:当您 希望从所有具有相同匹配test school 1值的节点中的特定键处开始时,才应使用该参数。当您试图分页/无休止地滚动结果时,此重载实际上非常有用。



 类似资料:
  • 现在我的问题是,如何在自定义的而不是自定义的中重写方法?我没有在这里公布我的代码,因为它与链接的代码本质上是相同的,只是我需要为子创建一个自定义的来代替,这样它就可以按照“pptang”的答案所述进行正确的度量。 否则,有没有比在第二个RecyclerView中使用1个RecyclerView更好的方法?只能有1个RecyclerView使用上述列表和每个中唯一项的网格填充活动/片段吗?

  • 问题内容: 两者之间到底有什么区别 和 第一个只是加快字段初始化速度的捷径吗?有性能方面的考虑吗? 问题答案: 第二种形式总是创建一个空的地图。 第一种形式是地图文字的特殊情况。地图文字允许创建 非空 地图: 现在,您的(通用)示例: 是没有初始值(键/值对)的地图文字。它完全等同于: 此外,这是为地图指定初始容量(大于初始分配的元素数量)的唯一方法。例: 将创建一个地图,该地图具有足够的空间来容

  • 问题内容: 查看量角器文档,我发现有一个选项可以不使用Selenium服务器使用flag 来运行量角器。 使用硒服务器和不使用硒服务器运行量角器测试之间的区别是什么,除了后者仅支持Chrome,Firefox? 问题答案: 首先,目前,您有 5种不同的内置选项/方式来连接浏览器驱动程序 : 指定在本地启动Selenium独立服务器 指定连接到正在运行的硒服务器(本地或远程) 设置并连接到Sauce

  • 代码: 上下文:尝试在JavaScript中使用 编辑: 完整代码: 编辑: 无法获取

  • 在GlassFish Server开源版本3.1中部署。1(构建12): 引起原因:java.security.PrivilegedActionExcema:com.sun.xml.bind.v2.runtime.IllegalAnnotationsExceptions: 1个IllegalAnnotationExceptions的计数没有ObjectFactory与@XmlElementDecl

  • 问题内容: 我正在尝试制作一个支持cookie的URLConnection。根据文档,我可以使用: 我无法使此代码正常工作,然后我看到这仅适用于API 9(2.3)。但是,在较旧的模拟器中使用CookieManager不会出现错误,CookieManager存在,但是无法构造。有什么方法可以使此版本适用于早期版本?我试过了: 但这不起作用。 问题答案: 我能够使用Ian Brown的CookieM