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

pymongo MongoDB-在update语句中使用变量,mongodb,pymongo,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[fiel

我试图使用变量在下面的文档中插入(使用更新)地址字段“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}})