我正在尝试对记录进行排序,并获取最后一个记录以获取我的最后一个插入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。
答案 0 :(得分:2)
将元组列表传递给Cursor.sort
。
排序(key_or_list,direction =无)
对此光标的结果进行排序。
传递字段名称和方向,ASCENDING或DESCENDING [docs]
collection.find().sort([
('_id', pymongo.DESCENDING),
])
或类似的论据:
collection.find().sort('_id', pymongo.DESCENDING)