Подтвердить что ты не робот

Использование .sort с PyMongo

С PyMongo, когда я пытаюсь восстановить объекты, отсортированные по их полям "число" и "дата", например:

db.test.find({"number": {"$gt": 1}}).sort({"number": 1, "date": -1})

Я получаю эту ошибку:

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

Что случилось с моим запросом сортировки?

4b9b3361

Ответ 1

sort должен быть списком пар ключ-направление, то есть

db.test.find({"number": {"$gt": 1}}).sort([("number", 1), ("date", -1)])

Причина, по которой это должен быть список, состоит в том, что порядок аргументов имеет значение, и dict не упорядочены в Python <3.6