Как я могу использовать одно перечисление для django модели и аргументы мутации graphql? - PullRequest
0 голосов
/ 03 апреля 2020

Я определил 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)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...