查询upperCase子级和RecyclerView

时间:2019-01-21 15:07:38

标签: java android firebase firebase-realtime-database

我在这里有2个问题。

  1. 如何搜索第二个单词?
例如:大苹果。

当用户搜索Apple时,它仍然会显示结果。

我已经进行了研究,大多数搜索查询仅搜索第一个单词。

  1. 当我们有两个孩子时,如何从主要孩子到相对视图中检索数据?

如下所示,有两种类型的数据库。我发现的是,我们必须在主体中制作新的upperCase BUT。

例如:

{
  "karangan" : {
    "karanganuid" : {
      "main": {
        "title": "Big Apple",
        "titleUpperCase": "BIG APPLE"
      }
    }
  }
}

我们可以这样做吗?如果可以,如何获取数据?

{
  "karangan" : {
    "karanganuid" : {
      "main" : {
        "title" : "Big Apple"
      },
      "upperCase" : {
        "titleUpperCase" : "BIG APPLE"
      }
    }
  }
}

1 个答案:

答案 0 :(得分:1)

  

如何搜索第二个单词?

Firebase实时数据库不支持本机索引编制或在数据库属性中搜索文本字段。因此,没有contains()方法。

此外,下载整个节点以搜索客户端的字段根本不可行。要启用对数据库数据的全文搜索,建议您使用AlgoliaElasticsearch之类的第三方搜索服务。

如果您考虑在某个时候尝试使用Cloud Firestore,请从此 post 中查看我的答案,在此我已经解释了它如何与Cloud Firestore一起使用在Firebase实时数据库中使用它的方式。