Pymongo LastRecord排序错误

时间:2017-12-19 10:01:32

标签: python mongodb pymongo

我正在尝试对记录进行排序,并获取最后一个记录以获取我的最后一个插入ID。

cursor = collection.find().sort({'_id':-1}).limit(1)

出现此错误。

TypeError: if no direction is specified, key_or_list must be an instance of list

我把它作为这样的列表,

cursor = collection.find().sort( [ {'_id':-1} ] ).limit(1)

我收到了这个错误

ValueError: not enough values to unpack (expected 2, got 1)

我尝试在RoboMongo上运行相同的查询,但它确实有效。它只适用于Python脚本中的Pymongo。

1 个答案:

答案 0 :(得分:2)

将元组列表传递给Cursor.sort

  

排序(key_or_list,direction =无)

     

对此光标的结果进行排序。

     

传递字段名称和方向,ASCENDING或DESCENDING [docs]

collection.find().sort([
    ('_id', pymongo.DESCENDING),
]) 

或类似的论据:

collection.find().sort('_id', pymongo.DESCENDING)