python – MongoEngine删除文件
发布时间:2020-12-20 11:52:01 所属栏目:Python 来源:网络整理
导读:我有以下MongoEngine文档 { '_id': 'some_id','data': 'some_data'} 如何使用MongoEngine删除此文档? 我尝试过的: import my_collectionobj = my_collection.MyCol.objects.get(_id='some_id')# obj is correctly found - let's continueobj.delete()# mon
我有以下MongoEngine文档
{ '_id': 'some_id','data': 'some_data' } 如何使用MongoEngine删除此文档? 我尝试过的: import my_collection obj = my_collection.MyCol.objects.get(_id='some_id') # obj is correctly found - let's continue obj.delete() # mongoengine.errors.ValidationError: 'None' is not a valid ObjectId obj.delete('some_id') # TypeError: delete() takes 1 positional argument but 2 were given obj.delete(_id='some_id') # mongoengine.errors.ValidationError: 'None' is not a valid ObjectId – 注意 奇怪的是,以下工作完美: my_collection.MyCol.objects.delete() # delete all documents in the collection 但我遵循了MongoEngine文档,仍然无法删除只删除一个特定文档. 解决方法
如果您的文档覆盖_id,则必须指明它仍然是主键.从以下位置更改文档类定义:
class MyCol(Document): _id = db.StringField() ... 要指定主键: class MyCol(Document): _id = db.StringField(primary_key=True) ... (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |