在将文档添加到Firestore后获取文档ID。

11 浏览
0 Comments

在将文档添加到Firestore后获取文档ID。

经过仔细阅读这个之后,我仍然无法获取文档自动生成的ID。没有"then"选项。

我的代码:

var mFirestore = FirebaseFirestore.getInstance()

mFirestore.firestoreSettings = FirebaseFirestoreSettings.Builder().build()

val rls: MutableMap = HashMap()

rls["title"] = "一些数据"

var pop = mFirestore.collection("Users").document("mic").collection("Rls")

pop.add(rls)

创建后如何获取ID?

0
0 Comments

问题的出现原因:在Firestore中添加文档后,需要获取该文档的ID,但在文档添加完成后,无法直接获取到文档的ID。

解决方法:通过以下步骤可以获取到文档的ID。

首先,使用如下代码生成一个随机的文档ID:

var docID = mFirestore.collection("Users").document("mic").collection("Rls").document()

然后,在添加数据时,可以通过以下代码获取到刚刚生成的文档ID,并将数据添加到该文档中:

var pop = mFirestore.collection("Users").document("mic").collection("Rls").document(docID.id)
pop.set(rls)

这样就可以在添加完文档后获取到文档的ID了。

0
0 Comments

问题的出现原因是想要在Firestore中添加文档后获取文档的id,但不清楚如何实现。解决方法是使用Firestore的add函数来添加文档,并在addOnSuccessListener中通过documentReference.id获取文档的id。

首先,根据文档中的说明,为了让Firestore自动生成一个id,可以使用以下方式使用'add'函数来添加文档:

// 添加一个带有生成的id的新文档。

val data = hashMapOf(

"name" to "Tokyo",

"country" to "Japan"

)

db.collection("cities")

.add(data)

.addOnSuccessListener { documentReference ->

Log.d(TAG, "DocumentSnapshot written with ID: ${documentReference.id}")

}

.addOnFailureListener { e ->

Log.w(TAG, "Error adding document", e)

}

在addOnSuccessListener中,可以通过documentReference.id来获取文档的id。

其次,确保按照文档中的说明对Firestore进行初始化,如下所示:

// 从Activity中访问Cloud Firestore实例

val db = Firebase.firestore

通过上述方法,就可以在添加文档后获取文档的id了。

0