我正在尝试使用jira python library访问python中的工作日志。我正在做以下事情:
issues = jira.search_issues("key=MYTICKET-1")
print(issues[0].fields.worklogs)
issue = jira.search_issues("MYTICKET-1")
print(issue.fields.worklogs)
如文档2.1.4节所述。但是,我收到以下错误(对于这两种情况):
AttributeError: type object 'PropertyHolder' has no attribute 'worklogs'
我做错了吗?文档是否过时了?如何访问工作日志(或其他字段,如评论等)?什么是PropertyHolder
?如何访问它(它没有在文档中描述!)?
答案 0 :(得分:1)
此问题here与您的问题类似,有人发布了一项解决方案。
还有一个与similar question on Github相关的附件(不是工作日志)。评论中的最后一个答案有可能有所帮助的解决方法。
答案 1 :(得分:1)
这是因为看来,jira.JIRA.search_issues
缺省情况下不会获取worklog
之类的所有“内置”字段(尽管文档仅使用含糊的术语{{3} }
-“全部”是什么?)。
您要么必须使用"fields - [...] Default is to include all fields":
client = jira.JIRA(...)
issue = client.issue("MYTICKET-1")
或明确列出要在jira.JIRA.search_issues
中提取的字段:
client = jira.JIRA(...)
issue = client.search_issues("key=MYTICKET-1", fields=[..., 'worklog'])[0]
还请注意,通过这种方式,您最多将获得20个工作日志项,这些项将附加到JIRA问题实例。如果需要所有这些,则应使用jira.JIRA.issue
:
client = jira.JIRA(...)
issue = client.issue("MYTICKET-1")
worklog = issue.fields.worklog
all_worklogs = client.worklogs(issue) if worklog.total > 20 else worklog.worklogs