Тип enum в схеме Python Eve - PullRequest
       10

Тип enum в схеме Python Eve

0 голосов
/ 01 февраля 2019

Я - любитель в среде Python Eve, но я использую его для целей разработки.Тем не менее, я не знаю, как сделать тип enum в схеме.Я имею в виду синтаксис в Python Eve для этого типа данных.

Итак, как мне выразить это в схеме Python Eve?

"tts" : {"enum": ["show","hide"]},

Любая помощь приветствуется.

Ответы [ 2 ]

0 голосов
/ 23 марта 2019

Вы ищете разрешенное правило.

"tts" : {"type": "string", "allowed": ["show", "hide"]}
0 голосов
/ 04 марта 2019

Я думаю, что вы можете использовать функцию пользовательских типов данных в Еве.Вы можете добавить новые типы данных, просто добавив методы _validate_type_<typename> в свой подкласс.Рассмотрим следующий фрагмент из исходного кода Eve.

def _validate_type_objectid(self, value):
""" Enables validation for `objectid` schema attribute.

:param value: field value.
"""
if isinstance(value, ObjectId):
    return True

Этот метод включает поддержку типа ObjectId MongoDB в вашей схеме, допуская что-то вроде этого:

'schema': {
   'owner': {
      'type': 'objectid',
      'required': True,
   },
}
...