【问题标题】:Pulling Trello card members into google sheet将 Trello 卡成员拉入谷歌表格
【发布时间】:2016-12-04 18:11:24
【问题描述】:

我确信这非常简单,但我已经断断续续地敲打了一个星期,但一无所获。 我将 Trello 卡的详细信息提取到 Google 表格中,最终目的是向给定列表中的任何 Trello 卡的成员发送电子邮件,该列表自上次活动以来已超过一定天数。

我可以使用 Trello 从 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);

然后去解析返回

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

我遇到的问题是,如果卡片中有多个成员,则 ID 会以逗号分隔的列表形式返回到像这样的子数组中

{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 对于每张卡仍然集中在一起,但是当它们被传递到电子表格时,只有第一个成员正在旅行。 代码如下

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 对逗号分隔值的处理。

在电子表格中,我不太关心(目前)我是否得到重复的卡片,每个卡片上都有一个成员 ID,每个成员 ID 的附加列或所有成员 ID 一起放在一个单元格中,我只是想要所有会员ID,这样我就可以麻烦他们处理他们的废弃卡片堵塞了我的列表。

感谢所有建议

【问题讨论】:

    标签: javascript arrays google-apps-script google-sheets trello


    【解决方案1】:

    试试这个代码,使用join:

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

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

    【讨论】:

      猜你喜欢
      • 2015-08-15
      • 2021-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-28
      相关资源
      最近更新 更多