Curso de Django

Uso de Managers en Django para Consultas de Base de Datos

Curso de Django

Contenido del curso

Desarrollo de Aplicaciones en Django

0:006:11

Recursos

Resumen

Los managers en Django son una herramienta poderosa que permite realizar diversas acciones dentro de las listas de objetos de un modelo, como contar, traer el primero o el último elemento, crear nuevos registros y mucho más.

Para contar los autores que están creados, utilizamos el manager por defecto llamado objects y el método count.

author_count = Author.objects.count() print(f"Hay {author_count} autores.")

¿Cómo traer el primer y último autor creado?

Para obtener el primer y último autor, podemos usar los métodos first y last del manager objects.

primer_autor = Author.objects.first() print(f"El primer autor es: {primer_autor.name}") ultimo_autor = Author.objects.last() print(f"El último autor es: {ultimo_autor.name}")

¿Cómo crear nuevos autores con el manager?

Podemos crear un nuevo autor directamente en la base de datos utilizando el método create del manager.

nuevo_autor = Author.objects.create(name="Luis Martínez", birthday="1980-01-01") print(f"Nuevo autor creado: {nuevo_autor.name}")

¿Cómo traer una lista de autores?

Para obtener una lista de todos los autores, utilizamos el método all del manager, que nos devuelve un queryset.

autores = Author.objects.all() for autor in autores: print(autor.name)

¿Cómo filtrar autores?

Podemos filtrar autores utilizando el método filter, que permite especificar condiciones basadas en los campos del modelo.

autores_filtrados = Author.objects.filter(name="Pydanny") for autor in autores_filtrados: print(f"Autor filtrado: {autor.name}")

¿Cómo borrar un autor filtrado?

Primero, filtramos el autor que queremos borrar y luego aplicamos el método delete.

Author.objects.filter(name="Luis Martínez").delete() print("Autor borrado.")

¿Cómo ordenar autores?

Podemos ordenar los autores utilizando el método order_by.

autores_ordenados = Author.objects.order_by('name') for autor in autores_ordenados: print(autor.name)

Uso de Managers en Django para Consultas de Base de Datos

Curso de Django

Clase 13 de 33

Clase 13 / 33