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

Upload: others

Post on 19-Mar-2020

37 views

Category:

Documents


0 download

TRANSCRIPT

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