2011-09-07 88 views
0

我已经在MongoDB集合中使用了它。mongodb FindAndModify - 更新数据

{ “_id”:物件( “4e677efce88c7f0718000000”), “ptbn”: “indl000000001”, “tbucode”: “5649”, “区”: “西部大开发”, “DCODE”: “110048”, “TBU”: “超级门诊”, “状态”: “德里”}

我无法了解如何与FindAndModify从MongoDB的

工作

我工作的MongoDB 1.8

我只是想修改从德里到goa和'区'从西向北的'国家'。

如何修改所有条目除了在Python的2.6

这是我到目前为止已经试过“ptbn”:

 connection = Connection('localhost', 27017) 
    db = connection.health 
    tc = db.tc_basic 

    basic = {'state' : state, 
       'district' : district, 
       'Dcode' : Dcode, 
       'tbu' : tbu, 
       'tbucode' : tbucode, 
       'ptbn' : ptbn 
       } 

    tc.save(basic) 

回答

4

你实际上并不需要findAndModify这一点。一个简单的update()将做的伎俩。

db.tc_basic.update({'_id':ObjectId("...")}, {'$set': {'state': 'goa', 'district': 'north'}}) 

有关可以与update()做什么的详细信息,请参阅:http://www.mongodb.org/display/DOCS/Updating

+0

http://stackoverflow.com/suggested-edits/102560 – thirtydot

+0

为了使这项工作有一个形式,只要把你的字段想要更改为字典,并将上面的'$ set'键的值设置为。为了完整起见,我应该提到你永远不应该信任用户提供的域名。你不希望他们能够设置任意字段。只要它们是字符串或数字,您不必担心转义值。 – mstearn