2010-12-11 6 views

Répondre

17

Si vous voulez results_count ignorer votre limit():

results = db.datasets.find({"test_set":"abc"}).sort("abc",pymongo.DESCENDING).skip((page-1)*num).limit(num) 
results_count = results.count() 

for post in results: 

Si vous voulez que le results_count être plafonnés à votre limit(), set applySkipLimit to True:

results = db.datasets.find({"test_set":"abc"}).sort("abc",pymongo.DESCENDING).skip((page-1)*num).limit(num) 
results_count = results.count(True) 

for post in results: 
+0

@Jake: Que proposez-vous à la place? – thirtydot

+1

results_count = results.count (Vrai) http://docs.mongodb.org/manual/reference/method/cursor.count/ Je pense que j'ai mal lu votre message. Je me suis arrêté à la première boucle. Je vois maintenant que vous l'avez mentionné. Désolé de voler par le siège de mon pantalon. – Jake

8

Je ne sais pas pourquoi vous voulez le compte si vous sont déjà en train de dépasser la limite 'num'. De toute façon, si vous voulez affirmer, voici ce que vous devriez faire.

results = db.datasets.find({"test_set":"abc"}).sort("abc",pymongo.DESCENDING).skip((page-1)*num).limit(num) 

results_count = results.count(True) 

qui correspondent à results_count avec num

Questions connexes