2016-03-16 26 views

回答

5

更新時,使用更新插入標誌:

db.foo.update_one(filter, updates_dict, upsert=True) 

工作爲例:

db.things.update_one({'thing':'apple'}, {'$set':{'color':'red'}}, upsert=True) 

這將爲firts文件搜索與'thing': 'apple'和更新它的顏色爲紅色。如果找不到文檔,它將創建一個帶有這兩個參數的文檔。

見文檔:http://api.mongodb.org/python/current/index.html

+0

謝謝,但我得到:文件 「foo.py」 35行,在 db.foo.update(記錄,UPSERT = TRUE) 類型錯誤:update()方法至少需要3個參數(3給出) – Inspiring

+0

更新已棄用,我將編輯爲update_one –

+0

讓我們想象我不是一個人,而是一個預處理器。 db.foo.insert(record)如何轉換爲db.foo.update_one(filter,record,upsert = True)?什麼是過濾器? – Inspiring

0

如果你只是想確保只有一個記錄可以存在基於特定的鍵,然後創建該鍵的唯一索引。這將確保唯一性。 任何使用相同密鑰插入記錄的嘗試都將失敗。你的鑰匙可以是例如SSN。

相關問題