Обнаружено повторение определения типа для имени 'Connection' в pagination graphql
Я использовал помощник соединения для реализации разбивки на страницы в graphql apis. Я хочу реализовать соединение более одного раза для одной и той же модели, но это дает мне ошибку дублирующегося типа. Может кто-нибудь предложить решение для поддержки нумерации страниц для нескольких API одной и той же модели. Я использовал приведенный ниже код.
connection :employees_index, function: Queries::Employees::Index.new
connection :employees_user_index, function: Queries::Employees::UserIndex.new
0 ответов
Я знаю, что уже поздно, и вы, возможно, уже получили решение, но недавно я столкнулся с той же проблемой и искал решение, но не смог его найти. Так что я решил это по-своему. Думаю, это может быть полезно другим:
Решение:
Вы можете решить эту проблему, имея класс подключения; внутри каталога "graphql/connection" в каталоге приложения; нравится:
class Connections::EmployeesConnection < GraphQL::Function
description 'Employees Connection'
type Types::EmployeeType.define_connection
end
Теперь используйте этот класс в качестве суперкласса для вашего класса запросов / мутаций следующим образом:
# Query class
class Queries::Employees::Index < Connections::EmployeesConnection
def call(obj, args, ctx)
# Do stuff here
end
end
То же самое для user_index:
# Query class
class Queries::Employees::UserIndex < Connections::EmployeesConnection
def call(obj, args, ctx)
# Do stuff here
end
end
Точно так же вы можете использовать тот же класс подключения для других запросов и изменений сотрудников; это не даст вам ошибки из-за повторяющегося определения соединения.