4

我正嘗試使用FirebaseFirestore數據庫在我的Android應用中處理User s。將Firebase身份驗證用戶映射到Firestore文檔

起初我想用IDAuth包(字符串)返回,並設置爲ID在數據庫中的usersCollection。當在Collectionusers內部創建Document時,我將uid字段設置爲該auth包字符串。

我知道有沒有這個字符串設定爲可索引值,使之類的查詢方式:

// get Auth package uid string 
db.collection("users").document(auth_uid_string); 

會工作。

因此,我猜想,替代方案是使用Query.whereEqualTo("uid", auth_uid_string),因爲firestore並不假定查詢是針對唯一值的。

我想避免上述解決方案,並設法將應用程序的users存儲在firestore中,並使用auth包來驗證我是否獲取了正確的用戶。這樣的解決方案可能嗎?或者我應該嘗試使用不同的 Firebase服務,或者甚至只需在heroku或其他內容中運行postgres服務器?

回答

6

我不知道如何在Android的做到這一點,但JS我做了以下內容:

firebase.firestore().collection('users').doc(currentUser.uid).set(currentUser)

currentUser是用戶對象的認證功能恢復(我用signInWithCredential) 它正在完美工作。我相信你可以在android中實現類似的方法。

+1

是的,所以我可以用'set'設置索引。謝謝 – Nevermore