Warum nicht einem einfachen Beispiel: ein Datensatz mit update_one raise ValueError?

Möchte ich einen Datensatz hinzufügen in die Sammlung, wenn der Schlüssel nicht bereits vorhanden ist. Ich verstehe [MongoDB][1] bietet die upsertfür diese, so habe ich eine

db.collection.update({"_id":"key1"},{"_id":"key1"},True) 

Diese scheint zu funktionieren.

Jedoch in der Pymongo Dokumentation er sagt, dass update ist veraltet und die Verwendung zu update_one().

Aber:

db.collection.update_one({"_id":"key1"},{"_id":"key1"},True)

Gibt:

raise ValueError('update only works with $ operators')
ValueError: update only works with $ operators

Ich nicht wirklich verstehen, warum update_one anders ist, und warum ich benötigen ein $ Betreiber. Kann mir jemand helfen?

InformationsquelleAutor johhny B | 2015-06-02
Schreibe einen Kommentar