如何使用flatter从firebase数据库中获取基于用户ID的值

如何使用flatter从firebase数据库中获取基于用户ID的值,firebase,firebase-realtime-database,dart,flutter,Firebase,Firebase Realtime Database,Dart,Flutter,我尝试体验Firebase Live数据库与Flatter。我想根据用户ID从firebase数据库中获取值。这意味着,如果用户使用邮件登录,他需要根据他的用户ID记录他的详细信息。有人能帮我吗。如果你有这个数据库: users userId mail: userx@gmail.com name: userx 然后,要基于userId获取数据,请尝试以下操作: final FirebaseDatabase database = new FirebaseDatabase(ap

我尝试体验Firebase Live数据库与Flatter。我想根据用户ID从firebase数据库中获取值。这意味着,如果用户使用邮件登录,他需要根据他的用户ID记录他的详细信息。有人能帮我吗。

如果你有这个数据库:

users
 userId
    mail: userx@gmail.com
    name: userx
然后,要基于userId获取数据,请尝试以下操作:

 final FirebaseDatabase database = new FirebaseDatabase(app: widget.app);
 _messagesRef = database.reference().child('users');

_messageRef.orderByKey().equalTo(userId).once().then((DataSnapshot snapshot) {
  print('Connected to the database and read ${snapshot.value}');
});
首先配置数据库,然后引用位置,并使用查询
orderByKey()
根据提供的用户ID获取数据

检查此处的示例:


你在用这个吗?是的,我只是在用那个。我想知道!如何在firebase数据库中基于用户ID获取数据。我已经完成了在数据库中存储数据的工作。现在我想用电子邮件登录,根据它,数据需要基于邮件用户ID。我试着做研究,但没有找到任何关于这些的例子。谢谢@peterHaddad。我已经做完了。我的问题是,如果我用电子邮件登录,我需要保存用户的个人数据,并根据用户的电子邮件地址(uid),我需要从数据库中获取数据。在上面的回答中,你是基于用户ID获取数据的,你应该使用我在回答中写的数据库结构,我会处理它。但我的问题是,如果用户第二次登录时必须显示存储的数据,那么此时我们是否正在将我们的信息保存在数据库中。像这样,我们有很多用户,所以在这种情况下,基于电子邮件的firebaseuserid,我需要获取数据。