База данных Flutter Firebase Realtime 'присоединиться' - PullRequest
0 голосов
/ 26 мая 2020

Как я могу объединить данные в базе данных реального времени flutter firebase. Модель данных на добавленном экране

У меня что-то вроде этого.
( app - аргумент конфигурации)
( userId означает, например, 'gg6G0c4PkbffGUyJ3lVJMSmd2Uf2')

Я хочу получать объекты от «пользователей» на основе «ожидающих» userId

final FirebaseDatabase database = FirebaseDatabase(app: widget.app);

_pendingRef = database.reference().child('pendings/${userId}');


_pendingSubscription =
        _pendingRef.onChildAdded.listen((Event event) {
      print('Child added: ${event.snapshot.value}');
    }, onError: (Object o) {
      final DatabaseError error = o;
      print('Error: ${error.code} ${error.message}');
    });

firebase realtime database model

1 Ответ

0 голосов
/ 26 мая 2020

В Firebase нет ничего встроенного для поддержки таких соединений. Вам нужно будет написать код в своем приложении для загрузки необходимых данных, также известный как соединение на стороне клиента.

Примерно:

final FirebaseDatabase database = FirebaseDatabase(app: widget.app);

_pendingRef = database.reference().child('pendings/${userId}');

_pendingSubscription = _pendingRef.onChildAdded.listen((Event event) {
  print('Child added: ${event.snapshot.value}');
  database.reference().child('users/${event.snapshot.key}').once().then((DataSnapshot snapshot) {
    print('${snapshot.value}');
  })
});
}, onError: (Object o) {
  final DatabaseError error = o;
  print('Error: ${error.code} ${error.message}');
});

dbRoot.child('current_bracket').onValue.listen((event) {
...