Graphql ruby “孤立类型”是为接口指定可能的解析类型的唯一方法吗?
Graphql ruby “孤立类型”是为接口指定可能的解析类型的唯一方法吗?,graphql-ruby,Graphql Ruby,ruby-graphql文档说明了以下关于接口的解析类型: …模式通过遍历其字段来查找其类型,从query、mutation和subscription开始。如果对象从来不是字段的返回类型,而只是通过接口连接,那么它必须通过孤立类型显式连接到架构 我对具有两个类的模块有以下定义: module Contact include GraphQL::Schema::Interface field :id, ID, null: false end class Cmpany < Type
ruby-graphql
文档说明了以下关于接口的解析类型:
…模式通过遍历其字段来查找其类型,从query
、mutation
和subscription
开始。如果对象从来不是字段的返回类型,而只是通过接口连接,那么它必须通过孤立类型
显式连接到架构
我对具有两个类的模块有以下定义:
module Contact
include GraphQL::Schema::Interface
field :id, ID, null: false
end
class Cmpany < Types::Base
implements Contact
graphql_name "Company"
field :name, String, null: false
end
class Person < Types::Base
implements Contact
graphql_name "Person"
field :first_name, String, null: false
field :last_name, String, null: false
end
模块触点
包含GraphQL::Schema::Interface
字段:id,id,null:false
结束
类Cmpany
目前,我的代码与文档中的描述相匹配,因为类型Company
和Person
绝不是架构中任何字段的返回类型,而查询的返回类型为接口Contact
。如果没有任何其他更改,GraphQL将无法识别联系人
查询
对于接口来说,孤立类型
和对于联合来说,可能的类型
是什么?也许是命名让我感到不舒服,但是孤立类型
似乎是一个不应该使用的解决方法。这是正确的解决方案吗