使用python和tornado基于mongodb中的日期对列表进行排序

时间:2015-11-13 05:26:46

标签: python mongodb sorting tornado tornado-motor

我正在尝试从mongodb的表中对学生列表进行排序。我正在使用龙卷风和蟒蛇。我正在使用Pong与db连接。我在使用Motorclient

时获得了正确的结果
students.find()

现在,当我尝试排序并列出它时,会给我内部服务器错误,终端中没有错误记录。

Sid = self.body['Sid']
data = []
_id = db.students.find({"Sid": Sid},{'_id': False,"status": False,"Dateofadmission":False})
for document in (yield _id.to_list(length=100)):
    data.append(document)
return[{"status code": 1,"studentInfo": data }]

日期存储在mongodb中:

_id = db.students.find({"Sid": Sid},{'_id': False,"status": False,"Dateofadmission":False}).sort({'Dateofadmission' : -1})

有人请指导我如何根据{ "_id" : ObjectId("56443dc03f32df1bf0e8b4e8"), "Dateofadmission" : ISODate("2015-10-22T00:00:00Z"), "Sid" : "56443dc03f32df1bf0e8b4e8", "Name" : "Ram" }

对学生列表进行排序

1 个答案:

答案 0 :(得分:2)

pymongo中的

sort()有两个参数 - 一个键(或一个键列表)和方向。替换:

db.students.find({"Sid": Sid}, {'_id': False,"status": False,"Dateofadmission":False}).sort({'Dateofadmission' : -1})

使用:

db.students.find({"Sid": Sid}, {'_id': False,"status": False,"Dateofadmission":False}).sort('Dateofadmission', pymongo.DESCENDING)