如何通过单GraphQL请求获取GitHub新项目中Issue的状态
在GitHub Projects V2中通过单个GraphQL请求获取Issue及关联项目状态
可以通过在Issue的查询节点中嵌套projectsV2Items字段,实现单次请求同时获取Issue信息和其关联Projects V2的状态,完整的GraphQL查询语句如下:
{ search(query: "is:open is:issue assignee:@me archived:false", type: ISSUE, first: 30) { issueCount edges { node { ... on Issue { number title url # 获取当前Issue关联的所有Projects V2项目项 projectsV2Items(first: 10) { nodes { # 可选:获取项目标题,用于区分不同项目的状态 project { title } # 获取名为"Status"的单选状态字段值 fieldValueByName(name: "Status") { ... on ProjectV2ItemFieldSingleSelectValue { name } } } } } } } } }
关键说明:
- 替代经典项目中的
projectCards字段,新项目使用projectsV2Items来建立Issue和Projects V2的关联 - 通过
project { title }可以明确状态所属的项目(当Issue关联多个项目时非常有用) fieldValueByName支持直接按字段名查询,配合内联片段ProjectV2ItemFieldSingleSelectValue提取单选类型的状态名称
内容的提问来源于stack exchange,提问作者streetturtle
相关产品推荐
相关产品推荐

