Клубника GraphQL Django ограничивает возможности фильтрации в интерфейсе GraphiQL

У меня есть два graphql фильтра для внешнего ключа, которые работают в Strawberry GraphQL Django v0.31.

@strawberry.django.filters.filter(models.Client, lookups=True)
class ClientFilter:
    id:auto
    name:auto

@strawberry.django.filters.filter(models.Matter, lookups=True)
class MatterFilter:
    id: auto
    client:'ClientFilter'
    category:auto

На странице GraphiQL они создают фильтр, который выглядит следующим образом:

enter image description here

Мне не нужны все поля фильтра для пользователя, потому что некоторые из них не имеют смысла, например, использование isNull или regex-поля для id. Есть ли способ ограничить параметры фильтра, чтобы он был менее загроможден?

Немного поздновато, но да, вы можете это сделать, но вам придется определить свой собственный вход, например, так:

@strawberry.input
class LimitedFilterLookup(Generic[T]):
    i_contains: Optional[T] = UNSET

Затем вместо использования auto для полей фильтра вы объявите их следующим образом:

@strawberry.django.filters.filter(models.Client)
class ClientFilter:
    name: LimitedFilterLookup[str]

Вернуться на верх