簡體   English   中英

如何在Firestore數據庫的子集合中將數據添加到特定文檔?

[英]How to add data to a particular document in a subcollection in firestore database?

我的index.js:

const functions = require('firebase-functions');
const admin = require('firebase-admin');

admin.initializeApp(functions.config().firebase);
exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
  let action = request.body.result.action;
  var Name = request.body.result.parameters.Name;
  let params = request.body.result.parameters;
  var Answer1 = request.body.result.parameters.Answer1;
  let query = request.body.result.resolvedQuery;

  const parameters = request.body.result.parameters;
  const inputContexts = request.body.result.contexts;

  if (action === 'save.name' || inputContexts == 'welcome' && action === 'save.answer1' || inputContexts == 'question1') {
    admin.firestore().collection('users').doc('Details').collection('MYuser1').add({
      name: Name,

    }).then(ref => {
      console.log('Added new user');
      console.log('ref id is:' + ref.id);

      admin.firestore().collection('users').doc('Details').collection('MYuser1').doc(ref.id).add({
        //here I'm using doc(ref.id) to get that document
        answer1: Answer1,
      })
    });
  }
});

我可以使用此代碼將名稱添加到子集合中,但是我下次嘗試將answer1添加到該子集合內的同一文檔中,但是這使我在此語句上出錯,

admin.firestore().collection('users').doc('Details').collection('MYuser1').doc(ref.id).add({

錯誤看起來像:

在此處輸入圖片說明

我正在使用api v1 bot!

文檔引用上沒有add()方法。 這是您的文檔參考:

admin.firestore().collection('users').doc('Details').collection('MYuser1').doc(ref.id)

這樣,您嘗試在其上調用add()方法。 add()用於集合,您可以使用它向集合添加文檔。

我不清楚您要在那行上做什么,因為您之前已經添加了該文檔。 如果您有更多字段要添加到該文檔中,那么在您第一次在MyUser1集合上調用add()時,將所有字段都添加一次是有意義的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM