如何使用python获取文件夹中的工作表ID数组

时间:2018-08-02 16:23:42

标签: python api smartsheet-api smartsheet-api-2.0

当我尝试通过get.folder()调用获取id数组(通过使用folder = folder.sheets.id)时,得到的答案是:“ AttributeError:'TypedList'对象没有属性'id'”我不确定要在python中调用哪个函数来获取文件夹中的工作表ID数组。

我正在尝试使用python smartsheet sdk执行此操作,但我不确定如何格式化它。

inc_list = ['all'] # you can add other parameters here, separated by a comma
 response = ss_client.Folders.copy_folder(
  folderID,                           # folder_id
  ss_client.models.ContainerDestination({
    'destination_id': destinationID,
    'destination_type': 'folder',
    'new_name': cellValue
  }),
include=inc_list
)

copiedFolderID = response.result.id

folder = ss_client.Folders.get_folder(
  copiedFolderID)       # folder_id 

newFolder = folder.sheets.id

print (newFolder)

也感谢您帮助回答我的问题,我非常感谢。

2 个答案:

答案 0 :(得分:2)

folder.sheets是一个数组。出现错误的原因是因为数组级别没有id属性-您需要查看数组中的各个元素。

看看API docs以获得您将收到的示例。

sheet_ids = []
for sheet in folder.sheets
    sheet_ids.append(sheet.id)
print(sheet_ids)

答案 1 :(得分:1)

要获取文件夹中工作表的sheetIds列表,您的Python看起来应该像这样。

my_folder = ss_client.Folders.get_folder(folder_id)

for sheet in my_folder.sheets:
    print(sheet.id)