我的团队一直在使用GraphQL Ruby,我们已经找到了用于应用范围和对查询进行排序的用例,并且已经在几个地方反复编写相同的代码。
我想知道,有没有办法在任何使用它的地方实现解析逻辑?我想在每个返回特定类型的字段上添加过滤和排序参数,而不必在每次从字段返回时写入额外的样板。在下面的示例中,我将使用GraphQL :: Function包装它,并在args
上传递排序和过滤参数。我不想每次都使用该函数,只是让类型实现了将这些参数用于自己的解析的能力。
field :institutionUser, Types::InstitutionUserType do
with_filtering(resolve ->(obj, args, ctx) {
....resolution logic
})
end
答案 0 :(得分:0)
听起来像您想使用解析器。
field :institutionUser, resolver: Resolvers::InstitutionUser
...
module Resolvers
class InstitutionUser < GraphQL::Schema::Resolver
type Types::InstitutionUser
def resolve
...resolution logic
end
end
end