使用python和tornad在mongodb中基于日期排序列表

2024-04-19 16:15:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从mongodb的一个表中对学生列表进行排序。我用的是龙卷风和Python。我正在使用Motorclient与db连接。使用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 }]

现在,当我尝试排序和列出它给我内部服务器错误,没有错误的终端登录。你知道吗

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

日期在mongodb中存储为:

{
    "_id" : ObjectId("56443dc03f32df1bf0e8b4e8"),
    "Dateofadmission" : ISODate("2015-10-22T00:00:00Z"),
    "Sid" : "56443dc03f32df1bf0e8b4e8",
    "Name" : "Ram"
}

有人请指导我如何根据Dateofadmission对学生名单进行排序


Tags: idfalse列表dbdata排序mongodbstatus
1条回答
网友
1楼 · 发布于 2024-04-19 16:15:49

pymongo中的^{}接受两个参数—键(或键列表)和方向。替换:

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)

相关问题 更多 >