我正在尝试使用类似这样的东西:
class User(DjangoObjectType):
class Meta:
model = auth_models.User
filter_fields = ('email', )
interfaces = (Node, )
connection = UserConnection
class UserConnection(Connection):
extra = graphene.String()
class Meta:
node = User
class Query(graphene.ObjectType):
users_connection = DjangoFilterConnectionField(
User,
where=UserWhereInput()
)
根据我的理解,用户节点需要在其元上传递用户连接,而用户连接需要在其元上传递用户。
但是,它会创建一个交叉引用。有什么帮助吗?
答案可以在这里找到:
https://github.com/graphql-python/graphene-django/issues/304
class UserConnection(Connection):
extra = graphene.String()
class Meta:
abstract = True
class User(DjangoObjectType):
class Meta:
model = auth_models.User
filter_fields = ('email', )
interfaces = (Node, )
connection_class = UserConnection
class Query(graphene.ObjectType):
users_connection = DjangoFilterConnectionField(User, where=UserWhereInput())
参考: https://github.com/graphql-python/graphene-django/pull/313/commits/2a39f5d8eaba3f7772c63b012a974bb9a841fb9f