1
我有一些代碼使用$or
操作符刪除Mongo中的多個對象,或者至少它應該。此代碼基本上說明了我的應用程序正在做什麼
lookup = []
listofids = ['4e86fee56607f2a8a2000002','4e86fee56607f2a8a2000003','4e86feeb6607f2a8a2000006']
for id in listofids:
lookup.append({'_id':core.ObjectId(id)})
r = self.db().photos.update({
"$or":lookup
},{
'$set':{'var':'value'}
})
這不起作用,它不更新任何文檔。但是,如果我更改代碼做基本查找
lookup = []
listofids = ['4e86fee56607f2a8a2000002','4e86fee56607f2a8a2000003','4e86feeb6607f2a8a2000006']
for id in listofids:
lookup.append({'_id':core.ObjectId(id)})
r = self.db().photos.find({
"$or":lookup
})
for rs in r:
self.write(str(rs)+"\n\n")
它輸出所有記錄。我如何讓Mongo更新記錄?
self.db()映射到MongoDB數據庫,照片是集合。
此代碼是在Python,但我想的語法是很容易跟隨