我如何在颤振中获取文档 ID

时间:2021-05-01 10:53:48

标签: flutter google-cloud-firestore cloud

如何获取“内容”为“test2”的文档 ID? enter image description here 我像这样尝试..但条件不起作用。

 ref.where(ref.doc('content') == 'test2').get().then((QuerySnapshot snapshot){
      snapshot.docs.forEach((document){
        print(document.id);
      });
 });

如何获取特定文档的文档 ID? (我使用flutter和cloud firestore)

2 个答案:

答案 0 :(得分:0)

假设ref是您的集合参考,请使用:

await ref.where('contents', isEqualTo: 'test2').get().then((QuerySnapshot snapshot){
      snapshot.docs.forEach((document){
        print(document.id);
      });
 });

答案 1 :(得分:0)

您的字段名称似乎有拼写错误,屏幕截图中为 contents,而代码中为 content。所以这将导致空快照。

ref.where(ref.doc('contents') == 'test2').get().then((QuerySnapshot snapshot){
      snapshot.docs.forEach((document){
        print(document.id);
      });
 });

还要确保 ref 的值为 FirebaseFirestore.instance.collection('post')

PS:您也可以使用此语法。 ref.where("contents", isEqualTo: "post2").get()