Как добавить новый документ Firestore с вложенной коллекцией в React?

#javascript #reactjs #firebase #google-cloud-firestore #nosql

#javascript #reactjs #firebase #google-облако-firestore #nosql

Вопрос:

Как мне добавить новый документ в Firebase / Cloud Firestore с вложенной коллекцией?

 const createDocument = () => {
        const documentName = prompt('Enter document name:');
        if (documentName) {
            db.collection('despacito').add({
                name: documentName,
            })
}
  

Есть предложения? Спасибо за ваше время.

Ответ №1:

Согласно документу модели данных, коллекции и документы создаются неявно в Cloud Firestore. Просто назначьте данные документу в коллекции. Если коллекция или документ не существуют, Cloud Firestore создает их.

Поэтому нет необходимости создавать документ с вложенной коллекцией.

В документации по вложенным коллекциям для ссылки на новый документ в вложенной коллекции вы можете ссылаться на него как:

 const messageRef = db.collection('rooms').doc('roomA').collection('messages').doc('message1');
  

Поскольку вы используете метод .add , это должно быть что-то вроде:

 db.collection('despacito').doc('documentName').collection('subcollectionname').add({
                name: nesteddocumentName,
            })
  

Комментарии:

1. Очень полезно. Спасибо.

2. нет проблем, не стесняйтесь поддержать / принять ответ для справки для будущих пользователей с такой же проблемой