如何检查特定Firestore文档中是否存在特定字段?

时间:2018-10-17 17:00:18

标签: java android firebase google-cloud-firestore

说我有一个文件。我知道它的ID。现在,我想知道该文档中是否存在特定字段。如果没有,我想创建它。有可能吗?

PS:我不想将字段名与我自己的字段一起输入,并将该值设置为null

1 个答案:

答案 0 :(得分:2)

  

如何检查特定Firestore文档中是否存在特定字段?

要解决此问题,您可以像这样简单地检查无效性:

FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
DocumentReference docIdRef = rootRef.collection("yourCollection").document("yourDocumentId");
docIdRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
    @Override
    public void onComplete(@NonNull Task<DocumentSnapshot> task) {
        if (task.isSuccessful()) {
            DocumentSnapshot document = task.getResult();
            if (document.exists()) {
                if (document.get("yourField") != null) {
                    Log.d(TAG, "your field exist");
                } else {
                    Log.d(TAG, "your field does not exist");
                    //Create the filed
                }
            }
        }
    }
});

要将新的特定字段添加到现有文档中,请从此 post 中查看我的答案。