我是python Eve框架的业余爱好者,但是我将其用于开发目的。但是,我不知道如何在架构中使用枚举类型。我的意思是python Eve中针对此数据类型的语法。
那么,如何在python eve模式中表达这一点?
"tts" : {"enum": ["show","hide"]},
感谢您的帮助。
答案 0 :(得分:1)
我认为您可以在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,
},
}
答案 1 :(得分:1)
您正在寻找allowed规则。
"tts" : {"type": "string", "allowed": ["show", "hide"]}