将 Trello 卡会员拉入 google sheet

Pulling Trello card members into google sheet

我敢肯定这非常简单,但我已经断断续续地用脑袋来反对它一个星期了,但一无所获。 我正在将 Trello 卡片的详细信息放入 google sheet 中,最终目的是向给定列表中任何 Trello 卡片的成员发送一封电子邮件,该列表自上次 activity.

我可以使用

从 Trello 获取卡片和相关字段
//get all cards from board   
var url = "https://api.trello.com/1/boards/<board id>/cards?filter=open&fields=name,idList,url,dateLastActivity,idMembers,idLabels&key=<key>&token=<token>";

var get = UrlFetchApp.fetch(url);

然后解析return

//parse JSON 
var dataSet = JSON.parse(get);

我遇到的问题是,如果一张卡片的成员不止一个,那么 ID 在像这样的子数组中 returned 作为逗号分隔的列表

{idMembers=[member_id, member_id, member_id], idLabels=[label_id], name=card_name, dateLastActivity=date, id=card_id, idList=list_id, url=https://trello.com/c/XXxxxXXxx/blahblahblahblahblahblah}

遍历已解析的 JSON 并将输出推送到一个新数组,每张卡片的所有成员 ID 仍然在一起,但是当它们传递给传播时 sheet 只有第一个成员正在旅行。 下面的代码

for (i = 0; i < dataSet.length; i++) {
data = dataSet[i];

rows.push([data.id, 
           data.name,
           data.idList,
           data.dateLastActivity,
           data.idMembers,
           data.idLabels,
           data.url,              
          ]);
}

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("SheetName");
var last_row = sheet.getLastRow();
var last_column = sheet.getLastColumn();
sheet.getRange(2,1,last_row,last_column).clear();  
dataRange = sheet.getRange(2, 1, rows.length, 7);
dataRange.setValues(rows);

我尝试再次遍历数组以分离出成员 ID

for(j = 0; j < data.idMembers.length; j++) {

但这并没有帮助,我不确定它是否沿着正确的路线走向解决方案。我什至不确定问题出在代码中,而不是 google sheet 对逗号分隔值的处理。

在传播中sheet我不太关心(目前)我是否收到重复的卡片,每张卡片上都有一个会员 ID,每个会员 ID 都有一个额外的列,或者所有会员 ID 都在一起在一个单元格中,我只需要所有会员 ID,这样我就可以麻烦他们处理他们废弃的卡,这些卡塞满了我的列表。

非常感谢收到的所有建议

试试这个代码,使用 join:

rows.push([data.id, 
           data.name,
           data.idList,
           data.dateLastActivity,
           data.idMembers.join(),
           data.idLabels,
           data.url,              
          ]);

这对我有用,给出了成员列表,用逗号分隔: 5467844a...,52cd1e6d27...,55bf2a090...