PyMongoのupdate()
の3番目の引数 upsert
です 辞書ではなくブール値を渡す必要があります。コードを次のように変更します:
self.word_counts[source].update({'date':posttime}, {"$inc" : words}, True)
または、upsert=True
を渡します キーワード引数として:
self.word_counts[source].update({'date':posttime}, {"$inc" : words}, upsert=True)
あなたの間違いは、update()
について読んだことが原因である可能性があります MongoDBドキュメントにあります。 JavaScriptバージョンのupdate
upsert
などのオプションのパラメータを含む3番目の引数としてオブジェクトを取ります およびmulti
。ただし、Pythonではキーワード引数を関数に渡すことができるため(位置引数しかないJavaScriptとは異なり)、これは不要であり、PyMongoはこれらのオプションをオプションの関数パラメーターとして使用します。