2014-09-23 65 views
0

我有一個文件爲用戶MongoDB的「漸」鍵,在其中更新值

bob = collection.find_one({'username':'bob'}) 

這將返回給我一個Python字典,

print bob 
>>{u'_id': ObjectId('542130bd43941e7878a8fa378'), 
    u'likes': {}, 
} 
type(bob) 
>> dict 

所以,我怎麼能這樣做bob.update({'likes': {'sports':'football','movie':'terminator'}})

+1

是否有任何這方面的問題:HTTP ://api.mongodb.org/python/current/api/pymongo/collection.html#pymongo.collection.Collection.update – 2014-09-23 10:16:44

回答

0

您錯誤地使用update()update()更新集合中的文檔。因此,您必須在集合上調用它,並向其傳遞一個指定您希望更新的文檔的字典,並使用修改器修改您之前指定的文檔中的某些字段。

像這樣:

collection.update({'username': 'bob'}, {'$set': {'likes': {'sports': 'football', 'movie': 'terminator'}}})

退房這裏已經提到的文件的有關update()更多有用的信息,如薩爾瓦多·達利:

http://api.mongodb.org/python/current/api/pymongo/collection.html#pymongo.collection.Collection.update