我是python Eve框架中的业余爱好者,但我将它用于开发目的。但是,我不知道如何在架构中使用枚举类型。我指的是python Eve中这种数据类型的语法。
那么,我如何在python eve架构中表达这一点?
"tts" : {"enum": ["show","hide"]},
任何帮助表示赞赏。
你正在寻找allowed规则。
"tts" : {"type": "string", "allowed": ["show", "hide"]}
我认为您可以在Eve中使用自定义数据类型功能。您只需将_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
此方法支持在架构中支持MongoDB ObjectId类型,允许这样的内容:
'schema': {
'owner': {
'type': 'objectid',
'required': True,
},
}