Mongoengine вдохновлен ORM Django, и, как и Django, он использует order_by
для сортировки набора результатов. order_by
принимает переменное число строковых аргументов, которые являются именами полей (как определено в ваших документах), которым необязательно предшествует "-
" (для обозначения сортировки по убыванию, то есть с наивысшим первым).
Например:
class Person(Document):
first_name = StringField()
last_name = StringField()
age = IntField()
# later
people = Person.objects.order_by('last_name', '-age')