我在这里有2个问题。
当用户搜索Apple时,它仍然会显示结果。
我已经进行了研究,大多数搜索查询仅搜索第一个单词。
如下所示,有两种类型的数据库。我发现的是,我们必须在主体中制作新的upperCase BUT。
例如:
{
"karangan" : {
"karanganuid" : {
"main": {
"title": "Big Apple",
"titleUpperCase": "BIG APPLE"
}
}
}
}
我们可以这样做吗?如果可以,如何获取数据?
{
"karangan" : {
"karanganuid" : {
"main" : {
"title" : "Big Apple"
},
"upperCase" : {
"titleUpperCase" : "BIG APPLE"
}
}
}
}
答案 0 :(得分:1)
如何搜索第二个单词?
Firebase实时数据库不不支持本机索引编制或在数据库属性中搜索文本字段。因此,没有contains()
方法。
此外,下载整个节点以搜索客户端的字段根本不可行。要启用对数据库数据的全文搜索,建议您使用Algolia或Elasticsearch之类的第三方搜索服务。
如果您考虑在某个时候尝试使用Cloud Firestore,请从此 post 中查看我的答案,在此我已经解释了它如何与Cloud Firestore一起使用在Firebase实时数据库中使用它的方式。