Firebase DataSnapshot.value возвращает ноль - PullRequest
0 голосов
/ 22 апреля 2020

Итак, у меня есть следующая структура

1]

И для некоторого резонанса я не знаю, почему этот код возвращает нуль

static Stream<User> getAll(List<dynamic> users) async* {
for (dynamic item in users) {
  var usr = await FirebaseDatabase.instance
      .reference()
      .child('Users/$item')
      .once();
  bool admin = (await FirebaseDatabase.instance
          .reference()
          .child('Admins/$item')
          .once()) !=
      null;
  yield User._createFromPath(MapEntry(usr.key, usr.value), admin);
}

, когда я вызовите usr.key, он возвращает идентификатор пользователя в базе данных. В другом месте код simillar работает нормально

static Stream<Area> getAll(List<dynamic> areas) async* {
for (dynamic item in areas) {
  yield Area._createFromPath(
    MapEntry(
      '$item',
      (await FirebaseDatabase.instance
              .reference()
              .child('Areas/$item')
              .once())
          .value,
    ),
  );
}

}

enter image description here

я не понимаю, почему он возвращает ноль здесь, я дважды проверил правила, и я даже сделал их верными для всех и до сих пор не работает

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