0

问:我想了解用户在Absinthegraphql 框架内的 GraphQL 查询中选择的字段。

我很难四处寻找,%Absinthe.Resolution{}因为它是一个巨大的状态,与许多文件上的零散文档一起使用。

给出以下示例。用户查询可以返回联合类型的帖子。用户在响应中遇到的每种类型上都选择idrole和。parentIdslugPost

fragment Component on Component {
  id
  role
  parentId
}

{
  post(slug: "super-paloma-sunglasses") {
    ... on Post {
      ...Component
      slug
    }
  }
}

现在我有一个解析器:

def post(_root, %{slug: slug}, info) do
  # fields_by_type = queried_fields(info)
  result = App.Repo.execute(:document_by_slug, [slug])
  {:ok, result}
end

现在我的问题是,如果info不完全了解Absinte.Resolution.

Ps 是 Elixir Graphql 实现“苦艾酒”的新手。我显然会继续研究解决方案,如果我在这里找到一个帖子,但也许其他人遇到了类似的事情并且已经有了解决方案。

Pps:我不应该那么难,因为这一定是一个非常常见的用例,因为 GraphQL 使服务器能够小心他从数据库中获取的数据。

4

0 回答 0