Списки(Lists) и Ненулевой тип (Non-Null)

Объектные типы ObjectTypes, скаляры scalars и перечисления enums это единственные типы, который вы можете определить в Graphene.

Но когда вы используете их в других частях Вашей схемы или при объявлении переменных Вашего запроса, Вы можете использовать дополнительные модификаторы, которые повлияют на проверку этих значений.

Ненулевой тип(NonNull)

import graphene

class Character(graphene.ObjectType):
    name = graphene.NonNull(graphene.String)

В данном примере, мы используем строку String и обозначаем ее как ненулевой тип Non-Null, оборачивая в NonNull класс. Это означает, что сервер всегда будет ожидать возврата ненулевого значения для этого поля, а получение нулевого значения фактически вызовет ошибку выполнения GraphQL (GraphQL execution error), давая понять клиенту, что что-то пошло не так.

ПредыдущийNonNullкод также соответсвует следующему примеру:

import graphene

class Character(graphene.ObjectType):
    name = graphene.String(required=True)
)

Списки(List)

import graphene

class Character(graphene.ObjectType):
    appears_in = graphene.List(graphene.String)

Списки (Lists) работают в таком же ключе:

Мы можем использовать модификатор для обозначения типа как списка List, что указывает на то, что это поле вернет список значений данного типа. Работает схожим образом для аргументов, где на шаге валидации ожидается список таких значений.

results matching ""

    No results matching ""