0

在从有效负载应用修改后,我想在将文档上传到数据库之前对其进行验证。两者都.update().modify()修改后的文档上传到数据库,所以我不能这样做.modify().validate()因为无论如何都会上传文档。

我怎么能做这些事情:

  • 强制验证.update()
  • 调用update()/modify()不上传到数据库
  • 在不上传的情况下修改我的文档(使用 中允许的方便语法.update()

这些东西之一(或类似的东西)是否存在?

# Option 1
document.update(validate=True, **payload)

# Option 2
document.modify(upload=False, **payload) # or .upload()
document.validate()
document.save()

payload可以是常规数据或 mongoengine 中允许的“Django 样式更新关键字参数” 。

接近我想要做的,但我不想从头开始重新创建文档。

到目前为止,我唯一的解决方案是肮脏的:调用modify(),验证更新的文档,如果验证失败则重新上传旧文档。

4

0 回答 0