Объект типа EnumMeta не является JSON сериализуемым - Graphene Django

Я пытаюсь разработать api в graphql и использовал перечисления, но при создании выдает ошибку. Object of type EnumMeta is not JSON serializable

Ниже приведены типы и объекты, которые я создал для мутации.

class TypeEnum(graphene.Enum):
    small = 1
    medium = 2
    big = 3
    

class ModelEnum(graphene.Enum):
    students = 1
    teachers = 2
    
    
class FieldEnum(graphene.Enum):
    name = 1
    class = 2
    section = 3
    

class InputObject(graphene.InputObjectType):
    type = TypeEnum(),
    model = ModelEnum(),
    field = FieldEnum(),
    name = graphene.String()
    
    class Meta:
        fields = "__all__"


class OutputObject(DjangoObjectType):
    id = graphene.String(source="pk", required=True)
    is_active = graphene.Boolean()
    input = graphene.JSONString() (graphene.Field(OutputObject) - same fields with InputObject but graphene.ObjectType )

class AddMutation(graphene.Mutation):
    class Arguments:
        input = graphene.Argument(InputObject)
        is_active = graphene.Boolean()
        
    response = graphene.Field(OutputObject)
    
    def mutate(self, info, input, is_active):
        payload = dict(is_active=is_active, input=input)
        model.objects.create(**payload)
        return AddMutation(response=qs)

Я пробовал json.dumps(input, default=str), но он преобразовывал объект ввода в строку следующим образом. "{\"type\": \"EnumMeta.small\", \"model\": \"EnumMeta.studens\", \"field\": \"EnumMeta.name\", \"name\": \"jane dow\"}"

Я предполагаю, что input = graphene.JSONString() - это часть, которая выбрасывает ошибку, но не уверен, как ее разрешить. Может ли кто-нибудь помочь мне с этим?

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