Я новичок в этом огненном шторме и управлении базами данных.
В моем коде много документов групп в коллекции групп. Теперь я хочу показать человеку из коллекции пользователей указанные c групп, к которым он подключен.
вот как выглядят uid групп: вот как выглядят группы UID
вот как выглядит документ пользователя: вот как выглядит документ пользователя
Код, который я использую для создания группового документа, таков: после создания документа я добавляю uid нового документа в пользовательский массив с именем groups.
Future createNewGroupData(String groupName) async {
String _userID = await getUID();
return await groupCollection.add({
'creatorUID': _userID,
'groupName': groupName,
'teachers': [_userID],
}).then((ref) => {
userCollection.document(_userID).updateData({'groups': FieldValue.arrayUnion([ref.documentID])})
});
это структура как я создаю документ для каждого пользователя,
Future updateUserData(int avatarID, String firstName, String lastName, String status, List groups, String school) async {
return await userCollection.document(uid).setData({
'avatarID': avatarID.round(),
'firstName': firstName,
'lastName': lastName,
'status': status,
'groups': groups,
'school': school,
});
}
Как я реализовал это, когда пользователь был добавлен в группу. Uid этой группы был добавлен в массив под документами этого пользователя.
Теперь я хочу получить поток снимков групп, в массиве которых присутствуют только uid. Я действительно не могу найти способ реализовать это.