gpt4 book ai didi

java - 如何获取Firestore文档ID?

转载 作者:行者123 更新时间:2023-12-02 09:30:04 25 4
gpt4 key购买 nike

我试图获取文档 ID 来更新数据,但它创建了一个新的文档 ID。如何获取Firestore文档ID?

My firestore

代码:

    final String getID = firebaseFirestore.collection("Users").document(currentUser.getUid()).collection("Documents").document().getId();

buttonUpdate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final String inspectorName = editInspector.getText().toString().trim();
final String marketLocation = editLocation.getText().toString().trim();

progressUpdated.show();

firebaseFirestore.collection("Users").document(currentUser.getUid()).collection("Documents").document(getID).update("inspectorName", inspectorName, "marketLocation", marketLocation).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Toast.makeText(StartCounting.this, "Document updated", Toast.LENGTH_SHORT).show();

progressUpdated.dismiss();
dialogUpdate.dismiss();
}
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Toast.makeText(StartCounting.this, "Error : " + e.toString(), Toast.LENGTH_LONG).show();

progressUpdated.dismiss();
}
});
}
});

最佳答案

它没有更新,因为:

以下代码行在每次调用 getID 时都会生成新的 id 并将其存储在 String 中。

String getID = firebaseFirestore.collection("Users").document(currentUser.getUid()).collection("Documents").document().getId();

所以我建议您将从 getID 存储中获取的 id 存储在每个用户文档下。例如,当您创建/生成文档时,只需在 userid 字段下添加 id 的字符串值。

关于java - 如何获取Firestore文档ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58058746/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com