0

ドキュメントを検索し、いくつかのフィールドを変更して更新する私の更新:

newdocument = db.collection.findOne{"id_" : ObjectId("2bfc42346cb2f36c4f3fc6264c")}
newdocument.somefield = "New value" 
db.collection.update({"_id" : ObjectId("2bfc42346cb2f36c4f3fc6264c")}, newdocument)

_idnewdocumentからフィールドを削除しない限り、何もしませんdel newdocument["_id"]。これは予想される動作ですか?

4

1 に答える 1

1

idは不変ですが、作成した構造も使用する必要はありません。単に:

db.collection.update({"_id" : ObjectId("2bfc42346cb2f36c4f3fc6264c")}, {$set:{"somefield":"New value"}})

動作します

于 2013-01-30T19:45:08.380 に答える