pymongo MongoDB - 在update语句中使用变量

时间:2015-03-22 13:19:21

标签: mongodb pymongo

我正在尝试使用变量在下面的文档中插入(使用更新)地址字段“1.2.3.4”。我希望它看起来像这样:

{ "_id" : ObjectId("550ebacab9d30b5b2d998751"), "address" : "google.com",  "1.2.3.4" : true  }

但我会在下面找到这个,为什么?

> var target = true;
> var field = "1.2.3.4";
> 
> var obj = {};
> obj[field] = target;
true
> db.repvpn.update( { "address": "google.com" },{ $set: obj } );
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.repvpn.find({"address": "google.com"})
{ "_id" : ObjectId("550ebacab9d30b5b2d998751"), "address" : "google.com",  "1" : { "2" : { "3" : { "4" : true } } } }

在我的pymongo中我只有下面有相同的结果(ip =“google.com”)

source = '1.2.3.4'
self.repvpn.update({"address": ip}, {"$set": {source: 1}})

0 个答案:

没有答案