【发布时间】:2015-10-28 10:20:30
【问题描述】:
我想upsert(update or insert) a list of record,其实我知道mongodb从mongodb3.0开始就支持bulk操作。
我想知道mongoengine在mongoengine (0.10.0)中是否支持bulk upsert operation。
如果没有,我想知道upsert的记录列表,我知道mongoengine支持insert这样的批处理:
class User(Document):
username = StringField(required=True)
password = StringFiedl(required=True)
meta = {'db_alias': 'user_info', 'collection': 'user',
'indexes': [{'fields': ['username'], 'unique': True}]
}
def save_users(self, users):
Users.objects.insert(users) # raise mongoengine.errors.NotUniqueError
【问题讨论】:
-
@AndreL 实际上最后一个是我的代码
-
@AndreL 也许简单的模式让你理解我,我有一个唯一的键
username,我只想插入用户或如果用户存在则更新用户。
标签: python mongodb mongoengine upsert