0

我正在尝试在 pymongo 中使用 find_and_modify (我对此很陌生)

以下语法似乎因 pymongo.errors.OperationFailure 而失败 有人可以解释原因

posts.find_and_modify(query={'permalink':permalink,'comments':{'$slice':[ordinal,1]}},update={'$inc':{'num_likes':1}},upsert=True)

posts 是一个有效的集合,并且 permalink 是一个适当的字符串,序数是一个 int

4

1 回答 1

0

选项

'$slice':[ordinal,1]

不能是查询条件的一部分,因为它定义了返回行为。但根据定义,find_and_modify 函数只处理一条搜索记录。在您的情况下,最好为每个评论记录分配一个 id 并使用 'commentId':ordinal 作为查询中的一个标准。

请参阅http://docs.mongodb.org/manual/reference/projection/slice/http://docs.mongodb.org/manual/reference/command/findAndModify/以供参考。

于 2012-12-17T08:06:21.387 回答