智能 Sheet 行调用无法获取信息或无法正常工作

Smart Sheet Row calls not getting information or working

我正在尝试使用行属性 created_by 通过 Python SDK 访问它,但它一直抛出错误。我不确定我是否遗漏了什么。

每次我尝试使用它时都会收到错误消息:

  File "C:\Python27\lib\site-packages\smartsheet\models\row.py", line 166, in __getattr__  raise AttributeError(key)
  AttributeError: created_by

当我 运行 created_at 时它也不会 return 任何东西,但至少它不会抛出错误。

还有其他人遇到这个问题,或者至少可以指出我做错了什么吗?

每当我调用它时都会发生。这是一个简单的例子

smartsheet = smartsheet.Smartsheet(SMARTSHEET_ACCESS_TOKEN)
sheet = smartsheet.Sheets.get_sheet(IT_TRACKER_ID)
rows = sheet.rows
columns = sheet.columns

print rows[1].created_by

通过 API,如果您希望 Get Sheet 响应包含 createdBy 属性对于每一行,您必须在请求中指定 include 参数,其值包含字符串 rowWriterInfo。 (有关详细信息,请参阅 Row Include Flags 部分 API 文档。)例如:

GET https://api.smartsheet.com/2.0/sheets/7359436428732292?include=rowWriterInfo

如果我通过 Postman 执行此请求,我会看到响应确实包含响应中每个 Row 对象的 createdBy 属性。

通过 SDK,我可以按如下方式执行相同的请求:

sheet = smartsheet.Sheets.get_sheet(7359436428732292, include='rowWriterInfo')

所以,SDK 似乎在正确发送请求。但是,目前 SDK 似乎不支持访问 Row 对象的 created_by 属性 -- 如果您搜索 Lib\site-packages\smartsheet\models\row.py 文件 created_by,你会得到空的。

我建议您通过在 corresponding GitHub repo 中打开问题向 Smartsheet 报告此问题。同时,您可以考虑更新 Python SDK 的本地副本以添加对访问 Row 对象的 created_by 属性 的支持。