4

我可以使用来自更高级别字段的属性作为 GraphQL 查询中较低级别字段的输入参数吗?

例如,足球俱乐部有球员和赛季。在每个赛季,俱乐部的一部分球员都会为俱乐部踢球。俱乐部的球员每个赛季可以有不同的球队号码。

我想查询俱乐部的球员一个赛季,以及他们那个赛季的球队号码,对于每个球员,我想要一个他们在那个赛季打过的比赛的列表。

我可以得到一个球员为俱乐部踢过的所有比赛(所有赛季)的列表。但我想过滤该列表,以便仅查询赛季中的游戏包含在列表中。

query {
  club {
    players {
      fullName
    }
    seasons {
      id <-- I want to use this value as input parameter $seasonId below
      players {
        edges {
          squadNumber
          node {
            fullName
            games(seasonId: $seasonId) { <-- how to use the value here?
              homeTeam
              awayTeam
            }
          }
        }
      }
      games {
        players {
          edges {
            goalsCount
            node {
              fullName
              games(seasonId: $seasonId) { <-- how to use the value here?
                homeTeam
                awayTeam
              }
            }
          }
        }
      }
    }
  }
}

如果这不可能,我是否应该引入一个SeasonPlayerGraphQL 类型(包含一个赛季球员的队号)?或者我应该使用包含季节 ID 的查询参数?

4

0 回答 0