Использование DjangoFilterConnectionField с пользовательским подключением в graphene_django - PullRequest
0 голосов
/ 10 октября 2018

Я пытаюсь использовать что-то похожее на это:

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()
    )

Насколько я понимаю, пользовательский узел должен быть передан UserConnection по своей мета, а UserConnection должен быть передан User по своей мета.

Однако создается перекрестная ссылка.Любая помощь?

1 Ответ

0 голосов
/ 10 октября 2018

А ответ можно найти здесь:

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

...