簡體   English   中英

如何檢查雲 firebase 中的唯一別名?

[英]How to check unique alias in cloud firebase?

我想查看 hashmap 中的昵稱,但我沒有從雲 firebase 中獲取所有文檔? 我怎樣才能做到這一點? 提前致謝。

val db = Firebase.firestore
val docRef = db.collection("User").document()
docRef.get().addOnSuccessListener { documents->
    
    if (documents != null) {

        val obj= documents.get("Basic Information") as HashMap<*, *>
        val checkNick= obj["nick"].toString()

        if (checkNick == nick){
            Toast.makeText(activity, "exists.", Toast.LENGTH_LONG).show()
        }

    } else {
        Log.d(TAG, "No such document")
    }
}

這行代碼創建了對一個新的、不存在的文檔的引用:

val docRef = db.collection("User").document()

由於文檔尚不存在,因此調用docRef.get()會生成一個空快照。


如果要加載特定文檔,則需要知道其文檔 ID 並在調用document時指定:

val docRef = db.collection("User").document("documentIdThatYouWantToLoad")

如果要檢查給定昵稱的集合中是否存在任何文檔,可以 使用查詢

val query = db.collection("User").whereEqualTo("nick", nick)

由於查詢可以獲取多個文檔,因此您還需要以不同的方式處理:

query.get().addOnSuccessListener { documents ->
    if (!documents.empty) {
        Toast.makeText(activity, "exists.", Toast.LENGTH_LONG).show()
    }
    for (document in documents) {
        Log.d(TAG, "${document.id} => ${document.data}")
    }
}
.addOnFailureListener { exception ->
    Log.w(TAG, "Error getting documents: ", exception)
}

另見:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM