Как создать коллекцию внутри документа? - PullRequest
0 голосов
/ 24 января 2020

Я пишу приложение Flutter с Firebase. При создании пользователя я делаю:

Firestore.instance.collection('users').document(user.uid).setData({
        'name': name + ' ' + surname,
        'email': user.email,
        'registerDate' : DateTime.now(),
        'isEmailVerified': user.isEmailVerified,
        'location': location,
        'photoUrl': user.photoUrl,
        'votes' : {},

      });

Я хочу, чтобы «голоса» были собранием и содержали документы.

1 Ответ

1 голос
/ 24 января 2020

Как создать коллекцию внутри документа?

Если вам нужна подколлекция в вашем документе uid, которая должна содержать голоса, используйте следующие строки кода:

Firestore.instance.collection('users').document(user.uid)
    .collection('votes').document(vote)
    .setData({/* ... */});

, в котором vote - это объект, который добавляется в подколлекцию votes.

Если вы хотите добавить коллекцию сразу после добавления пользователя в коллекцию users, затем проверьте, когда операция setData() завершена, и сразу после этого запишите объект vote в приведенную выше ссылку.

Еще одна вещь, которую следует помнить, заключается в том, что в Cloud Firestore документы и вложенные коллекции не работают как файлы файловой системы. и каталоги. Также смотрите мой ответ из следующего поста:

Документ / подколлекция Firestore не существует

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