【问题标题】:Delete data from firestore从 Firestore 中删除数据
【发布时间】:2018-09-12 18:34:30
【问题描述】:

我在 Firestore Firebase 上添加了数据,但我没有特定的文档,因为我使用 addSnapShotListener 来检索数据。当我不知道文档的名称时,如何删除文档。这是我添加数据的代码:

mondayCollectionReference.document().set(userMap, SetOptions.merge()).addOnSuccessListener(new OnSuccessListener<Void>() {
                                @Override
                                public void onSuccess(Void aVoid) {
                                    Toast.makeText(TimeForm.this, "Submitted", Toast.LENGTH_SHORT).show();
                                }
                            }).addOnFailureListener(new OnFailureListener() {
                                @Override
                                public void onFailure(@NonNull Exception e) {
                                    Log.d("ERROR", e.getMessage());
                                }
                            });

【问题讨论】:

    标签: android firebase google-cloud-firestore


    【解决方案1】:

    document() 返回一个DocumentReference 对象。该对象为您提供了删除它所需的所有信息,尤其是它自己的delete() 方法。它还有一个getId() 方法来帮助你记住它的id。

    因此,您应该先存储 DocumentReference 对象,然后再对其调用方法:

    DocumentReference ref = mondayCollectionReference.document()
    String id = ref.getId();
    ref.set(...);
    // use ref or id later if you want to delete it
    

    【讨论】:

    • 所以即使我使用 addSnapshotListener 并且不知道 id 也可以删除漏洞文档?
    • 您可以随时在 DocumentReference 上调用 delete(),而无需知道其 ID。 id 保存在引用本身中。
    • @Doug 在我的收藏中我有多个文档如何删除特定文档?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-22
    • 1970-01-01
    • 2021-12-29
    • 2021-11-18
    • 1970-01-01
    • 2020-04-28
    • 1970-01-01
    相关资源
    最近更新 更多