myresults = db.persona.aggregate([{"$match": {'$or': [{"id": {"$gte": 1}},{"id": {"$lte": 20000}}]}},{ "$project": {"id": 1,"ward": 1}},{'cursor': {'batchSize': 0}}],useCursor=False)
for result in myresults:
db.persona.update_many({"_id":result["_id"]},{"$set": {column_name:df1.iloc[:,m][list(result.values())[1]]}})
OperationFailure出错:无法识别的管道阶段名称:“cursor”
我怎么解决这个问题
方法 ^PyMongo中的{a1}指定第一个参数是
pipeline
,这是聚合管道阶段的列表。错误是因为cursor
不是有效的Aggregation Pipeline Stage。在因此,您可以使用以下方法更正此问题:
请注意,参数
useCursor
已弃用,并将在pymongov4.0+中删除。基于示例代码段,您可能希望返回一个可以迭代的cursor。在同样值得注意的是,这是一个用于aggregation pipelineviamongo shell的游标选项,也许这就是混淆的来源。在
相关问题 更多 >
编程相关推荐