Est-ce que quelqu'un sait s'il existe un moyen de simplement sélectionner le nombre de lignes correspondant à une requête dans Django? J'ai une recherche que j'ai écrite qui divise les résultats en ensembles de 40, mais j'aimerais aussi afficher le nombre total de résultats. Je pourrais quelque chose comme len (Model.objects.filter (name__icontains = search)), mais il semblerait que ce serait très inefficace (puisque je suppose que cela générerait un "SELECT * FROM modèle", puis tous les résultants objets). Aucune suggestion?Sélectionnez un COUNT en utilisant le modèle Django?
18
A
Répondre
30
Il y a deux façons de faire cela:
- Utilisez Django's count() QuerySet method - simplement ajouter count() à la fin de la appropriée QuerySet
- Générez un aggregate over the QuerySet - L'agrégation est lorsque vous "récupérez les valeurs qui sont dérivées en résumant ou agrégeant une collection d'objets." Ref: Django Aggregation Documentation
Les liens ci-dessus correspondent aux sections applicables de la documentation de Django.
30
Utilisation count()
:
>>> Model.objects.count()
42
>>> Model.related_set.count()
102
>>> Model.related_set.filter(blah=42).count()
3
Questions connexes
- 1. Sélectionnez count() max() Date
- 2. Vue SQL. Sélectionnez count ... Où
- 3. PHP en utilisant count() avec le tableau
- 4. Django - scinde grand modèle en utilisant FormWizard
- 5. Passe sélectionnez la valeur d'option dans le format d'URL nommé en utilisant Django et Jquery
- 6. chaîne de django sélectionnez
- 7. Django convertir le modèle en code SQL
- 8. Comment migrer un modèle contenant un ImageField à partir de django-imagekit en utilisant django-south?
- 9. Sélectionnez dynamiquement quel modèle de base à étendre dans django
- 10. Impossible de sélectionner l'utilisateur "Sélectionnez TOP @Count ..."
- 11. Django sélectionnez somme distincte
- 12. Comment trier par annotated Count() dans un modèle associé dans Django
- 13. Django: Modification en ligne du modèle associé en utilisant inlineformset
- 14. Modèle Django en premier?
- 15. Django étend le modèle
- 16. django admin hiérarchique modèle en ligne modifier
- 17. Multiple instruction Select en utilisant COUNT
- 18. Django: En utilisant un système AUTH personnalisé, pourquoi le modèle User est-il toujours nécessaire?
- 19. En utilisant DISTINCT et COUNT ensemble dans un MySQL Query
- 20. Django: Parse JSON dans mon modèle en utilisant Javascript
- 21. Question sur le modèle django API
- 22. Enregistrer un fichier en utilisant un modèle et un formulaire non basé sur un modèle dans Django
- 23. Django: plusieurs modèles dans un modèle utilisant des formulaires
- 24. Django: modèle distinct dir pour le modèle
- 25. django admin.site.name dans le modèle
- 26. Django - transactions dans le modèle?
- 27. Python Django Forms Multiple Sélectionnez HTML Ouput
- 28. comment enregistrer un objet django en utilisant un dictionnaire?
- 29. forme Django pour le modèle
- 30. Django Custom Managers pour le modèle utilisateur
Merci, l'agrégat a fait l'affaire. C'est plutôt étrange. Je devais faire un agrégat (Count ('id')). Count() (compter mon compte?). Je suis heureux, cependant, tant que ce n'est que j'espère tirer seulement un certain nombre et pas toutes les données dans le tableau. – Andrew