【发布时间】:2013-07-22 23:40:39
【问题描述】:
将 MongoEngine 从 0.7.9 升级到 0.8.3 后,任何将任何现有文档保存在任何集合中的尝试都会导致 NotUniqueError(示例中显示user 集合):
Tried to save duplicate unique keys (E11000 duplicate key error index: foo.user.$_id_ dup key: { : ObjectId('xxxxxx') })
如果我创建一个新文档并多次保存它,我会收到同样的错误:
a = Foo()
a.save()
a.save() # results in duplicate error
默认情况下,Mongo 在_id 上创建一个无法删除的索引,并且我没有其他使用_id 的索引。我见过的大多数与此类似的问题都出现在不是_id 并且可以删除的重复索引上,但这真的很奇怪。我对 _id 字段没有做任何奇怪的事情,只是让 Mongo 自己生成它。
关于什么可能导致这种情况发生的任何想法?
谢谢!
【问题讨论】:
-
我建议记录一个问题。 github.com/MongoEngine/mongoengine/issues
-
我创建了这个问题,以防有人发现这个问题并想要一个指向任何开发者评论的链接:github.com/MongoEngine/mongoengine/issues/411
标签: python mongodb mongoengine