使用MongoEngine Document类方法进行自定义验证和预保存挂钩
||
我目前正在探索MongoEngine“对象文档映射器”的可能性。目前尚不清楚的是,我可以在多大程度上将验证和对象创建逻辑移到Document对象本身。
我的印象是这应该不是问题,但是我没有找到很多有关问题的例子/建议/最佳实践。
自定义验证函数,将自动在save()上调用以评估字段内容是否有效;
根据字段内容的哈希值,自动在save()上生成标识符;
我认为我需要重写save()方法,以便可以调用自定义逻辑,但是缺少示例使我相信这可能是错误的方法...
欢迎使用mongoEngine提供任何示例或对高质量代码库的引用。
没有找到相关结果
已邀请:
3 个回复
蓄荣糖些
。 如果发现要向所有模型添加验证钩子,则可以考虑创建自定义子类
,例如:
然后,您可以以相当自然的方式为给定的模型类定义钩子:
掀辟髓观粟
方法来完成自定义验证。
编辑:也就是说,在根据模型定义中设置的规则验证模型之前,必须小心使用
,因为它是从
调用的。
珊畴炮贩号
另外,MongoEngine中现在有适当的信号支持,可以处理其他种类的钩子(例如您在问题中提到的标识符生成)。 http://mongoengine.readthedocs.io/en/latest/guide/signals.html