使用应用程序脚本将数据从谷歌表发送到 Firestore 云

时间:2021-01-07 19:09:19

标签: javascript google-sheets google-cloud-firestore

我一直在尝试将数据从 google 电子表格发送到 firestore 数据库,但我不知道每个字段的标题,所以我想从 google 表格标题列中动态获取字段名称(google 表格的第一行) .下面是我使用的代码。如何从工作表本身动态添加字段名称。

function DBinsert() {
   const email = "xxxxxxxx.gserviceaccount.com";
   const key = "-----BEGIN PRIVATE KEY-----xxxxxx\n-----END PRIVATE KEY-----\n";
   const projectId = "db";
   var firestore = FirestoreApp.getFirestore (email, key, projectId);
   
// get document data from ther spreadsheet
   var sh1 = SpreadsheetApp.getActiveSpreadsheet();
   var sheet = sh1.getSheetByName("Sheet1"); 
   // get the last row and column in order to define range
   var sheetLR = sheet.getLastRow(); // get the last row
   var sheetLC = sheet.getLastColumn(); // get the last column
   var dataSR = 2; // the first row of data
   // define the data range
   var sourceRange = sheet.getRange(2,1,sheetLR-dataSR+1,sheetLC);
   // get the data
   var sourceData = sourceRange.getValues();
   // get the number of length of the object in order to establish a loop value
   var sourceLen = sourceData.length;
   // Loop through the rows
     for (var i=0;i<sourceLen;i++){
       if(sourceData[i][1] !== '') {
         var data = {};
           data.name = sourceData[i][0];
           data.age = sourceData[i][1];
           data.place = sourceData[i][2];
           data.address = sourceData[i][3];   
           firestore.createDocument("testsheet",data);
   }
  } 
}

0 个答案:

没有答案