lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de...

16
Django REST Framework lo mejor de Django sin lo peor de Django

Transcript of lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de...

Page 1: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

Django REST Frameworklo mejor de Djangosin lo peor de Django

Page 2: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

Algunas definicionesAPI (Interfaz de programación de aplicaciones)▪ Están pensadas para ser accedidas por otros programas.

▪ Ventajas de ofrecer una API como servicio:□ Control de la información que se entrega.□ Información actualizada.□ Flexibilidad del manejo interno del servicio.□ Volumen de datos.□ Facilidad de filtrar información.□ Datos normalizados.

▪ Desarrollo orientado a microservicios:□ Equipos de desarrollo pequeños y especializados

2

Page 3: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

Algunas definiciones

3

CRUD o ABM▪ Se refiere a las operaciones básicas (“Crear, Leer, Actualizar

y Eliminar”) de los objetos de nuestra base de datos.

REST▪ Estilo de arquitectura de software para la creación de APIs.▪ Métodos HTTP explícitos:

□ GET□ POST□ PUT□ PATCH□ DELETE

Page 4: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

4

Django REST FrameworkSerializers▪ Convierten objetos de Python a formatos de datos más simples como

JSON y XML (serialización) y viceversa (deserialización).▪ Validan los datos que recibe la aplicación, como los Forms en Django.

Vistas (views) especializadas▪ Vistas basadas en clases que se corresponden con los métodos de HTTP

utilizados para CRUD:□ CreateAPIView → POST□ RetrieveAPIView y ListAPIView → GET□ UpdateAPIView → PUT + PATCH□ DestroyAPIView → DELETE

Page 5: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

5

Serializers

Page 6: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

6

ModelSerializer

▪ Basado en el modelo, genera automáticamente los campos y validaciones del serializer.

▪ Muy similar a ModelForm de Django.

Page 7: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

7

Vistas basadas en funciones

Page 8: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

8

Vistas basadas en clases

Page 9: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

9

Vistas genéricas

Page 10: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

10

Viewsets

▪ Encapsulan la lógica de varias vistas relacionadas en una sola clase.

▪ Permiten utilizar actions y routers.▪ GenericViewSet, ModelViewSet y ReadOnlyModelViewSet.

Page 11: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

Actions

11

Page 12: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

12

Routers

▪ Generan automáticamente estructuras de URLs típicas.▪ Si no se especifica el basename, se genera automáticamente en base al

queryset de la viewset.

Page 13: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

Filtering

13

Page 14: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

Search

14

Page 15: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

Ordering

15

Page 16: lo mejor de Django Django REST Framework4 Django REST Framework Serializers Convierten objetos de Python a formatos de datos más simples como JSON y XML (serialización) y viceversa

1616

¡Gracias!¿Preguntas?▪ Documentación oficial:

https://www.django-rest-framework.org