仅在特定条件下创建字段

时间:2015-11-29 17:18:50

标签: python mongodb field conditional-statements mongoengine

这些天我刚刚开始使用mongoengine,需要根据特定情况制作一个字段。

我的文档结构如下(摘录):

class Substance(Document):
    title                   =   StringField(unique=True, required=True)
    state                   =   StringField(choices=['solid', 'liquid', 'gaseous'], required=True)
    specific_gas_constant   =   FloatField(required=True)

如您所见,specific_gas_constant被设置为必填字段。

从物理角度来看,specific gas constant仅针对gaseous物质定义,但不适用于solidliquid物质。但是,有没有办法根据字段state生成此字段,因为我在field docs中找不到这样的内容?

之前使用python-eve,我能够在端点定义中启用这样的条件要求:

'specific_gas_constant': {
    'type': 'number',
    'dependencies': {'state': 'gaseous'},
},

0 个答案:

没有答案