能否为GraphQL解析器转换返回类型

能否为GraphQL解析器转换返回类型,graphql,graphene-python,graphene-django,Graphql,Graphene Python,Graphene Django,我有一个graphenedjangographqlapi,我在其中添加了自定义指令和中间件,这与graphenedjango extras提供的非常相似。枚举类型以graphene.Int()字段的形式返回的地方有好几个,我希望能够使用一个指令将其转换为graphene.String(),但它本身不能这样做。例如 { foo { bar # return Int # vs bar @readable # return String } }

我有一个
graphenedjango
graphqlapi,我在其中添加了自定义指令和中间件,这与
graphenedjango extras
提供的非常相似。枚举类型以
graphene.Int()
字段的形式返回的地方有好几个,我希望能够使用一个指令将其转换为
graphene.String()
,但它本身不能这样做。例如

{
  foo {
    bar            # return Int
    # vs
    bar @readable  # return String
  }
}
这可能吗?我正在查看
ResolvInfo
字段,返回类型中有一些内容,但初始尝试不起作用


编辑:FWIW我认为API目前使用Python和Graphene开发并不重要。问题更多的是GraphQL是否支持这一点,我假设如果它不支持这一点,那么任何语言或库都不可能实现这一点。

拥有变量输出类型并不符合GraphQL的精神。严格来说,你不应该这样做。也就是说,您可以轻松地为其他类型添加另一个字段,即

type Foo {
    barStr: String
    barInt: Int
}

然后只需在查询中请求所需的类型。

使用变量输出类型并不符合graphQL的精神。严格来说,你不应该这样做。也就是说,您可以轻松地为其他类型添加另一个字段,即

type Foo {
    barStr: String
    barInt: Int
}
然后在你的查询中只需要一个