繁体   English   中英

无法保存腌制的MongoEngine文档

[英]Can't save pickled MongoEngine document

我已经将一些mongoengine文档转储到pickle文件中。 当我在运行时中加载它们并尝试将它们保存到Db时,不会引发任何错误,但不会保存文档。

这是一个代码示例:

    with open("documents.list", "rb") as infile:
        documents = pickle.load(infile)
        for document in documents:
            if MyDocument.objects(id=document.id).first() is None:
                document.save()

我已验证document对象与正确的集合和数据库相关联。 在上面的代码中, if执行了document.save() ,它将输入。 但是我的收藏中没有文件...

这可能是因为您的文档在被腌制时已经处于saved状态,因此不会再次插入到Db中。 您可以通过更改document.save()行在数据库中强制创建它们:

document.save(force_insert=True)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM