如何为石墨烯-django中的react-relay创建一个查看器字段?这并不像预期的那样工作。我使用的是石墨烯-django v.2.2。Django 2.1。React-relay v1.7.0-rc.1。
// landingpage.schema.py
class CollectionNode(DjangoObjectType):
class Meta:
model = Collection
interfaces = (relay.Node, )
class Viewer(graphene.ObjectType):
class Meta:
interfaces = [relay.Node, ]
collection = graphene.Field(CollectionNode)
def resolve_collection(self, info, **kwargs):
return Collection.objects.all()
class Query(object):
viewer = graphene.Field(Viewer)
def resolve_viewer(self, info, **kwargs):
return Viewer() # or info.parent_type发布于 2018-09-07 04:10:19
我设法自己解决了这个问题。因此,我将查看器对象移动到根模式,如下所示。希望这篇文章能帮助其他有同样问题的人。
// project_name.schema.py
import graphene
import graphql_jwt
from django.conf import settings
from graphene import relay, ObjectType
import about.schema
import shop.schema
import landingpage.schema
class Viewer(about.schema.Query, landingpage.schema.Query, shop.schema.Query, graphene.ObjectType):
class Meta:
interfaces = [relay.Node, ]
class Query(graphene.ObjectType):
viewer = graphene.Field(Viewer)
def resolve_viewer(self, info, **kwargs):
return Viewer() # or info.parent_type
class Mutation(shop.schema.Mutation, graphene.ObjectType):
token_auth = graphql_jwt.ObtainJSONWebToken.Field()
verify_token = graphql_jwt.Verify.Field()
refresh_token = graphql_jwt.Refresh.Field()
schema = graphene.Schema(query=Query, mutation=Mutation)_
// landingpage.schema.py
class CollectionNode(DjangoObjectType):
class Meta:
model = Collection
interfaces = (relay.Node, )
#
# QUERY
class Query(object):
class Meta:
interfaces = [relay.Node, ]
collection = graphene.Field(CollectionNode)
def resolve_collection(self, info, **kwargs):
return Collection.objects.all()https://stackoverflow.com/questions/52211426
复制相似问题