Я определил Django модели с полями, содержащими выбор текста, соответствующий перечислениям. GraphQL API предоставляет мутации (которые не являются производными от моделей напрямую) с аргументами типа enum, которые должны принимать те же значения, что и модели. Как я могу избавиться от своего дублирования?
models.py :
class SomeModel(models.Model):
class SomeEnum(models.TextChoices):
A = "A", _("Option A")
B = "B", _("Option B")
enum_field = models.CharField(
max_length=1,
choices=SomeEnum.choices,
default=SomeEnum.A,
)
schema.py :
class SomeEnumSchema(graphene.Enum):
A = "A"
B = "B"
class SomeMutation(graphene.Mutation):
class Arguments:
some_enum = SomeEnumSchema(required=True)