【问题标题】:How to get Firestore document specific data Flutter如何获取 Firestore 文档特定数据 Flutter
【发布时间】:2020-05-14 10:21:01
【问题描述】:

当我按下按钮时,我想为我的文本小部件获取该电子邮件地址。

【问题讨论】:

    标签: firebase flutter dart google-cloud-firestore


    【解决方案1】:

    您可以尝试以下方法:

    void _onPressed() {
      Firestore.instance.collection("users").getDocuments().then((querySnapshot) {
        querySnapshot.documents.forEach((result) {
          print(result.data["email"]);
        });
      });
    }
    

    这将检索集合中的所有电子邮件。


    如果您知道文档 ID,那么您可以执行以下操作来检索一封特定于文档 ID 的电子邮件:

      void _onPressed() async{
        var firebaseUser = await FirebaseAuth.instance.currentUser();
        Firestore.instance.collection("users").document(firebaseUser.uid).get().then((value){
          print(value.data["email"]);
        });
      }
    

    假设您将currentuserid 作为文档 ID,则上述工作有效。

    【讨论】:

    • document(firebaseUser.uid) 这部分显示错误。
    • "以上工作假设您将当前用户 ID 作为文档 ID"
    • 我可以使用用户 ID 获取文档 ID。因为我的文档 ID 和用户 ID 不同
    • 添加文档到数据库时,可以使用 Firebase uid 作为文档 id
    【解决方案2】:

    如果您知道要查找的电子邮件地址,则可以使用 where 函数。

    Firestore.instance.collection('users').where('email', isEqualTo: 'point@gmail.com'); 
    

    【讨论】:

      猜你喜欢
      • 2021-10-22
      • 1970-01-01
      • 2019-05-05
      • 2021-06-17
      • 2020-03-04
      • 1970-01-01
      • 2021-10-03
      • 2020-09-05
      • 2019-05-28
      相关资源
      最近更新 更多