擅长:python、mysql、java
<p>可以使用<a href="https://docs.graphene-python.org/en/latest/types/unions/" rel="nofollow noreferrer">Union</a>来指定多个不同的结果类</p>
<p>就你而言,那将是:</p>
<pre><code>class MetadataScalarNode(DjangoObjectType):
class Meta:
interfaces = (Node,)
connection_class = Connection
model = MetadataScalar
fields = '__all__'
class MetadataChoicesNode(DjangoObjectType):
class Meta:
interfaces = (Node,)
connection_class = Connection
model = MetadataChoices
fields = '__all__'
class MetadataNode(Union):
class Meta:
types = (MetadataScalarNode, MetadataChoicesNode)
</code></pre>
<p>graphql查询将如下所示:</p>
<pre><code>mutation {
createMetadata (input: {
stringFormat: "foo"
sequence: 12
name: "bar"
}) {
metadata {
__typename
... on MetadataScalarNode {
name
sequence
stringFormat
}
... on MetadataChoicesNode {
name
sequence
choices
}
}
}
}
</code></pre>