Поэтому я пытаюсь использовать библиотеку разбиения на страницы (pagy) для создания метаданных, которые мне нужны для моих запросов GraphQL.
Итак, у меня есть такой код:
app / graphql / types / toon_type.rb
module Types
class ToonType < Types::BaseObject
graphql_name 'Toon'
field :id, ID, null: false
field :name, String, null: false
end
end
app / graphql / types / query_type.rb
module Types
class QueryType < Types::BaseObject
graphql_name 'Query'
field :toons, resolver: Queries::ToonsQuery
end
end
app /graphql / reports / toons_query.rb
module Queries
class ToonsQuery < GraphQL::Schema::Resolver
type [Types::ToonType], null: false
def resolve
Toon.all # <-- Here is where I want to do `pagy, toons = pagy(Toon.all, page: 1)` at
end
end
end
И, по сути, я хочу иметь возможность добавлять к нему метаданные типа pagy, делая что-то вроде этого:
query {
toons(page: 2) {
id
name
}
metadata {
...metadataInfo
}
}
НоЯ не уверен, как / где я могу вставить метаданные в свой запрос или типы, чтобы сделать что-то вроде этого.