Flutter и Cloud Firestore: получить c пользовательских данных от пользователей в Firestore при использовании модели пользователя - PullRequest
0 голосов
/ 04 мая 2020

Я занимаюсь разработкой приложения для социальных сетей, используя Flutter и Firestore. То, что я сделал, было

  1. Создать класс модели UserAttributes для пользователей. это код моей модели
  2. получить поток UserAttributs
Stream<List<UserAttributes>> get userdata  {
    return userCollection.snapshots().map(_userAttributesFromSnapShot);
  }

4.Установить StreamProvider на нужную страницу (отмеченную звездочкой)

class MapPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    **return StreamProvider<List<UserAttributes>>.value(
      value: DatabaseService().userdata,**
          child: Scaffold( 
backgroundColor: Color(0xff09031D),
appBar: PreferredSize(
  preferredSize: Size.fromHeight(30.0),

  child: header()),
drawer: myDrawer(),
body: Container(child: MyUserData()),
      ),
    );
  }

5.Печатать значения из списка UserAttributes

class MyUserData extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    final userData = Provider.of<List<UserAttributes>>(context);

    userData.forEach((doc) {
      print(doc.firstName);
      print(doc.secondName);
      print(doc.city);
      print(doc.country);
      print(doc.gender);
      print(doc.playerPoints);
      print(doc.playerType);
    });

    return Container();
  }
}

Мой вопрос: при печати атрибутов пользователя я получаю все коллекции из базы данных. Я хочу войти только в UserAttributes пользователя. как мне этого добиться?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...