使用 CollectionGroup 查询时如何获取子集合的父文档 ID?

时间:2021-07-16 07:03:44

标签: firebase flutter google-cloud-firestore

我正在使用集合组查询,但无法获取父文档 ID。

collection
  document1
    subC
      doc1
  document2
    subC
      doc2

在运行查询时,我想获取父文档的名称,即 document1document2 等,但它返回 doc1doc2。这是我的查询:

var col = FirebaseFirestore.instance.collectionGroup('subC').where('foo', isEqualTo: 'bar');
var snapshot = await col.get();
for (var doc in snapshot.docs) {
  print(doc.id); // Prints doc1, doc2
}

1 个答案:

答案 0 :(得分:1)

doc.id 返回基础文档 ID。您需要首先获取当前的 DocumentReference (doc1, doc2),使用该 get CollectionReference (subC) 然后获取其父项,即您的 { {1}} 和 document1

所以,你需要这个:

document2