首页 > 解决方案 > 检查文档是否包含 2 个字符串

问题描述

我将 Firestore 与 Android (Kotlin) 一起使用。如果要检查是否存在包含 2 个用户 ID 的文档,请在我的一个集合中。如果不存在这样的文档,我想写信给我的收藏。否则,我想获取该文档的 ID。这是我的文件的样子:

文档

给定 2 个字符串,我如何检查文档是否包含这两个字符串?

标签: androidfirebasekotlingoogle-cloud-firestore

解决方案


要检查特定文档是否包含这两个特定 id,您需要使用Query. 我假设屏幕截图中的文档存在于名为“users”的集合中,请使用以下代码行:

var rootRef = FirebaseFirestore.getInstance()
var usersRef = rootRef.collection("users")
var queryByTWoIds = usersRef.whereEqualTo("p1", "9EBt ... LX62").whereEqualTo("p2", "Tsh6 ... Fin1")
queryByTWoIds!!.get().addOnSuccessListener { documents ->
    for (document in documents) {
        Log.d(TAG, "${document.id} => ${document.data}")
    }
}.addOnFailureListener { exception ->
    Log.w(TAG, "Error getting documents: ", exception)
}

请注意,Cloud Firestore 允许链接多个whereEqualTo()方法调用。


推荐阅读