ruby-on-rails - 在 graphql 分页中找到名称 'Connection' 的重复类型定义

标签 ruby-on-rails ruby pagination graphql graphql-ruby

我已经使用连接助手在 graphql api 中实现分页。我想为同一模型多次实现连接,但它给我重复的类型错误。任何人都可以建议解决方案来支持同一模型的多个 api 的分页。 我使用了以下代码。

连接:employees_index,函数:Queries::Employees::Index.new

连接:employees_user_index,函数:Queries::Employees::UserIndex.new

最佳答案

我知道现在已经晚了,您可能已经找到了解决方案,但最近我遇到了同样的问题并搜索了解决方案但找不到。所以我用我的方式解决了它。我认为它可能对其他人有用:

解决方法:

你可以通过连接类来解决它;在 app 目录中的“graphql/connection”目录中;像这样:

class Connections::EmployeesConnection < GraphQL::Function
   description 'Employees Connection'

   type Types::EmployeeType.define_connection
end

现在使用此类作为您的查询/变更类的父类(super class),如下所示:

# 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

同样,您可以对其他员工查询和更改使用相同的连接类;对于连接的重复定义,它不会给你一个错误。

关于ruby-on-rails - 在 graphql 分页中找到名称 'Connection' 的重复类型定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48700479/

相关文章:

ruby-on-rails - 新项目使用哪个版本的 Rails?

PHP Oracle 分页无法使用 ROWNUM 显示数据

php - PHP 分页期间查询丢失重要信息

javascript - Rails vue.js 深度嵌套(属性的属性)

ruby-on-rails - 带排序和限制的 Rails Active Record 连接查询

ruby - 使用 mechanize 检查名称相似但不同的 div

ruby-on-rails - 在 rspec 中 stub 类级别常量

javascript - 如何使用 'pagination' 制作 Extjs 4.2 条形图

javascript - Ruby 生成的 javascript 文件不会在页面刷新时更新

ruby-on-rails - 未定义的方法 `spec' #<ActiveRecord::ConnectionAdapters::NullPool:0x00007fd44f8ab300> - Rails 6 schema:load