Как сгенерировать поля из enum в django-графене? - PullRequest
0 голосов
/ 11 ноября 2019

Я пытаюсь выполнить следующую схему:

distance {
  km
  mi
}

Это будет возвращать расстояние до некоторого объекта. Есть перечисление всех возможных расстояний, и я хочу сгенерировать их автоматически. До сих пор я пришел со следующим кодом:

DISTANCE_FIELD_CHOICES = D.UNITS.keys()
distance_fields = {
    k: graphene.Float(description=f'{k} measurement') for k in DISTANCE_FIELD_CHOICES
}

DistanceField = type('DistanceField', (graphene.ObjectType,), distance_fields)

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

...