¿Alguien sabe si hay una manera de simplemente seleccionar el número de filas que coinciden con una consulta en Django? Tengo una búsqueda que he escrito que divide los resultados en conjuntos de 40, pero me gustaría mostrar el número total de resultados también. Podría hacer algo como len (Model.objects.filter (name__icontains = search)), pero parece que sería extremadamente ineficiente (ya que supongo que generaría un modelo "SELECT * FROM" y luego todos los resultados objetos). ¿Alguna sugerencia?Seleccione un COUNT con el modelo Django?
18
A
Respuesta
30
Hay dos formas principales de manejar esta situación:
- Use Django's count() QuerySet method - simplemente añada count() al final de la adecuada QuerySet
- generar un aggregate over the QuerySet - Agregación es cuando "recuperas valores que se derivan resumiendo o agregando una colección de objetos". Ref: Django Aggregation Documentation
Los enlaces de arriba corresponden a las secciones aplicables de la documentación de Django.
30
Uso count()
:
>>> Model.objects.count()
42
>>> Model.related_set.count()
102
>>> Model.related_set.filter(blah=42).count()
3
Cuestiones relacionadas
- 1. Django filtra el modelo en ManyToMany count?
- 2. Django equivalente de COUNT con GROUP BY
- 3. seleccione count distinct usando pig latin
- 4. CakePHP Modelo: COUNT (*) en Containable
- 5. Django count RawQuerySet
- 6. Cómo ordenar por Count() anotado en un modelo relacionado en Django
- 7. Django seleccione opciones
- 8. Seleccione entre dos fechas con Django
- 9. Cambiando el comportamiento de un modelo de Django con __getattr__
- 10. Seleccione Hijos de un objeto con ForeignKey en Django?
- 11. Django Seleccione la consulta con la columna específica
- 12. actualizando un auto_hora DateTimeField en un modelo principal con Django
- 13. Django modelo. Objects.All() borrar() no
- 14. mysql - seleccione true cuando count es mayor que cero
- 15. Seleccione DISTINCT columnas individuales en django?
- 16. Django: agregue un campo a un modelo
- 17. polimorfismo modelo django con herencia proxy
- 18. ¿Cómo modelo una relación simétrica con django?
- 19. ¿Cómo uso las señales de Django con un modelo abstracto?
- 20. Trabajar con Django LocalFlavor postal como un modelo de campo
- 21. django: verificar modeladmin para un modelo determinado
- 22. inlines inversa en Django admin con más de un modelo
- 23. ¿Cómo llenar externamente un modelo de Django?
- 24. ChoiceField en Django modelo
- 25. ¿Cómo poner timedelta en el modelo django?
- 26. ¿Cómo extiendo el modelo del Grupo Django?
- 27. Django ForeignKey _set en un modelo heredado
- 28. Modelo múltipleAdmins/views para el mismo modelo en Django admin
- 29. Django - actualizar un modelo no eliminará el antiguo FileField
- 30. administrador de Django, ocultar un modelo
Gracias, agregado hizo el truco. Es un poco extraño; Tuve que hacer un agregado (Count ('id')). Count() (¿contar mi conteo?). Sin embargo, estoy feliz siempre y cuando, con suerte, solo obtenga un número y no todos los datos en la tabla. – Andrew