Entradas por categoría "django"
django+keyword

Resolución de problemas con el ORM de Django III: N + 1 queries


Iniciamos el tercer post de la serie recordando la importancia del rendimiento de las aplicaciones que desarrollamos en el día a día y lo recomendable que es tenerlo presente desde el inicio del proyecto.

En este post vamos a hacer frente al problema de las N + 1 queries, el cual se produce al hacer consultas a datos que no están en la tabla principal a la que hacemos la consulta.

Leer mas
django+keyword

Resolución de problemas con el ORM Django - I


Durante el desarrollo de las aplicaciones, todos los programadores nos hemos tenido que enfrentar a problemas que debemos resolver para que nuestros proyectos finalicen con éxito. Un clásico es encontrar fallos de rendimiento cuando las aplicaciones se empiezan a probar con el conjunto de datos de producción, típicamente de un volumen mucho mayor que el conjunto de datos de pruebas utilizados durante el desarrollo.

Tomando de referencia el desarrollo de aplicaciones Django, proponemos una serie de posts donde vamos a repasar los errores más comunes relacionados con las consultas a la base de datos y cómo enfocar su resolución.


Leer mas

Combinación de QuerySets en Django


En ocasiones, las aplicaciones necesitan trabajar mostrando elementos filtrados por condiciones muy diferentes que en una consulta SQL quedan unidas por ORs. Al realizar estos filtrados en el ORM de Django solemos recurrir a los objetos Q y a los operadores | y &. El problema es que los QuerySets pueden ampliar sus condiciones de forma encadenada y los operadores Q se aplican directamente sobre una llamada a filter o exclude, pero no sobre el resto de condiciones ya existentes de QuerySet. En esos casos puede ser interesante aprovechar una funcionalidad poco conocida de Django: la combinación de QuerySets.

Leer mas