7 java android firebase google-cloud-firestore
有人可以帮我解决如何在Cloud Firestore中重命名,移动或更新文档或集合名称的问题吗?
无论如何,我还可以访问我的Cloud Firestore来更新终端或任何应用程序中的集合或文档吗?
实际上,没有move方法可以让您简单地将文档从一个位置移动到另一个位置.你需要创建一个.为了将文档从一个位置移动到另一个位置,我使用以下方法来吸引您:
public void moveFirestoreDocument(DocumentReference fromPath, final DocumentReference toPath) {
fromPath.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
@Override
public void onComplete(@NonNull Task<DocumentSnapshot> task) {
if (task.isSuccessful()) {
DocumentSnapshot document = task.getResult();
if (document != null) {
toPath.set(document.getData())
.addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
Log.d(TAG, "DocumentSnapshot successfully written!");
fromPath.delete()
.addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
Log.d(TAG, "DocumentSnapshot successfully deleted!");
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.w(TAG, "Error deleting document", e);
}
});
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.w(TAG, "Error writing document", e);
}
});
} else {
Log.d(TAG, "No such document");
}
} else {
Log.d(TAG, "get failed with ", task.getException());
}
}
});
}
Run Code Online (Sandbox Code Playgroud)
其中fromPath是toPath您要移动的文档的位置,以及您要移动文档的位置.
流程如下:
Get来自fromPath位置的文件.Write文档到toPath位置.Delete来自fromPath位置的文件.
而已!
| 归档时间: |
|
| 查看次数: |
5443 次 |
| 最近记录: |