假设我在Mongoengine中定义了一个文档:
class User(document):
username = StringField()
password = StringField()
login_history = ListField()
我已经使用此" schema"创建了几个用户,现在我想删除login_history字段并将其更新为已创建的所有用户。如何在mongo shell中做到这一点?如果可能的话,如何使用MongoEngine做到这一点?
谢谢你们!
答案 0 :(得分:2)
只需$unset
字段而不指定匹配条件。所以对于Mongo Shell来说,它将是:
> db.user.update({}, {$unset: {login_history: true}}, {multi: true})
此处需要注意的关键部分是{multi: true}
选项,如果没有这个选项,您最终会更新单个文档。
<强>更新强>
对于Mongoengine,您拥有与关键字参数相同的多选项,请参阅documentation。