android - Firestore-获取子集合的父文档-LMLPHP我正在开发一个使用具有以下层次结构的Firestore数据库的应用程序:
parent_collection:
parent_document:
子集合:
child_document {
字符串名称}
使用collectionGroup我已经能够查询子集合中具有特定名称的文档,但是我不知道如何获取parent_document

 db.collectionGroup("subcollection").whereEqualTo("name", searchText).get()
                .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                    @Override
                    public void onComplete(@NonNull Task<QuerySnapshot> task) {
                        if(task.isSuccessful()){
                          //here I want to get the parent id of all results
                        }
                    }
                });

做到这一点的最佳方法是什么?

最佳答案

QuerySnapshot指向许多QueryDocumentSnapshot实例。

QueryDocumentSnapshot,您可以通过以下方式获得其来源:

snapshot.getRef().getParent()

然后父DocumentReference是:
snapshot.getRef().getParent().getParent()

因此,要获得父文档的子集合,请执行以下操作:
snapshot.getRef().getParent().getParent().collection("name_of_subcollection")

是的,我同意...这本来应该更具可读性。 :)

关于android - Firestore-获取子集合的父文档,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56219469/

10-11 17:14