3
我做錯了什麼或者我不明白$推(可能不明白)。反正我有以下文件:
{ "_id" : ObjectId("501c83051d41c8753e000000"),
"node" : "denver",
"enc" : { "environment" : "production", "classes" : { "denver" : "" } },
"inherit" : "default" }
,我試圖把文件
{ "_id" : ObjectId("501c83051d41c8753e000000"),
"node" : "denver",
"enc" : { "environment" : "production",
"classes" : { "denver" : "", "boulder" : ""} },
"inherit" : "default" }
這就是我的更新語句如下:
col.update({ 'node' : 'denver'},
{ '$push': { 'enc.classes' : {'boulder': ''}}},
True)
我不明白一個錯誤,但文件永遠不會更新。如果我將$ push更改爲$ set,那麼丹佛將被巨石取代。
感謝您的任何幫助。
這是最優秀的看到被接受的答案使用博爾德。 – kkurian 2013-01-31 22:33:27
在PyMongo 3.x'更新'已折舊。 您可以做同樣的事情,使用以下命令將數據推送到數組: db.foo.update_one({「node」:「denver」},{「$ push」:{「enc.classes.boulder」 :「」}} – 2016-01-26 21:05:13