2011-09-07 137 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