我想在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是一个有效的集合,并永久链接一个合适的字符串,序号为int
答案 0 :(得分: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/以供参考。