2017-09-26 3 views
1

Comment appeler la fonction pymongo sort() avec des arguments vides par défaut, donc je n'aurais pas de tri.Pymongo, tri à vide

collection.find(params).sort([]) 
ValueError: key_or_list must not be the empty list 

collection.find(params).sort({}) 
TypeError: if no direction is specified, key_or_list must be an instance of list 

collection.find(params).sort([{}]) 
ValueError: not enough values to unpack (expected 2, got 0) 

Dans la console mongo je peux le faire avec

db.collection.find().sort({}) 

Répondre

1

Vous ne pouvez pas passer une liste vide pour trier.

ci-dessous 2 requêtes renvoient mêmes résultats

self.collection.find() 
self.collection.find().sort([("$natural", pymongo.ASCENDING)]) 

Donc, si vous voulez sorte être ignoré juste passer [("$ naturelle", pymongo.ASCENDING)] pour trier.

Vous pouvez vous y référer answer