我正在尝试在最近更新的问题中获取评论员姓名的数据。我将更新的问题保存在列表中,当我在查询中传递列表时,它会给我AttributeError: type object 'PropertyHolder' has no attribute 'comment'
,即使问题上有评论。
有人可以帮忙吗?
以下是代码
def issue_tested(project_name, updated_from, updated_to):
print project_name, updated_from, updated_to
total_update=[]
total_update = jira.search_issues('project = %s AND updated >= %s and updated <= %s' % (project_name, updated_from, updated_to))
total_updated_length = len(total_update)
print total_update
print total_updated_length
print total_update[2]
issue = jira.issue(total_update[2])
print issue
print issue.fields.comment.comments[0].author.name
我遇到了这个问题,但是没有通过打印issue.fields.comment.comments[0].author.name
。但是,当我直接分配问题时,例如:i ssue = jira.issue('Issue_name')
,它会给我作者姓名。但是将它作为对象传递时会显示属性错误。
PS:我现在不想像现在这样使用Script-Runner,你能不能在python中给我任何解决方案?
谢谢!
答案 0 :(得分:0)
您收到此错误的原因是默认情况下search
方法会返回可导航字段的问题:
默认情况下,此处仅返回可导航(*可导航)字段 搜索资源。注意:get-issue中的默认值不同 资源 - 默认存在所有字段(* all)。
执行issue
方法时:
issue = jira.issue(total_update[2])
你传递issue
个对象,而不是字符串。在里面有一个条件:
if type(id) == Issue:
return id
即。它只返回search
执行中的原始方法,该方法缺少注释字段。
您可以要求search
方法将评论字段包含在结果中:
total_update = jira.search_issues(jql_str='project = %s AND updated >= %s and updated <= %s' % (project_name, updated_from, updated_to), fields='comment')
您可以通过密钥查询问题:
issue = jira.issue(total_update [2] .key)
方法#1是首选,除非您需要针对某些特定问题获得评论。