lidiando con formatos y unidades en nuestra api rest - python · pampeano, vivo en san rafael...
TRANSCRIPT
![Page 1: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/1.jpg)
Allhands Febrero
Lidiando con formatos y unidades en nuestra
API REST
#PyConAr2018 - 23/11/18 Matuu Varela
![Page 2: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/2.jpg)
▪ Pampeano, vivo en San Rafael (Mza).
▪ Ingeniero en informática.
▪ Miembro de la Asociación Civil Python Argentina (Asociate!!)
▪ Desarrollo en Python/Django desde hace más de 5 años.
▪ Trabajo en Kilimo (Córdoba)
Hola...
![Page 3: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/3.jpg)
https://goo.gl/Uu645x
![Page 4: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/4.jpg)
API REST
![Page 5: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/5.jpg)
![Page 6: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/6.jpg)
Recursos
![Page 7: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/7.jpg)
![Page 8: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/8.jpg)
![Page 9: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/9.jpg)
Serializadores
![Page 10: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/10.jpg)
![Page 11: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/11.jpg)
![Page 12: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/12.jpg)
Campos (Field)
Manejan la conversión entre los datos primitivos y los valores internos (python)
![Page 13: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/13.jpg)
![Page 14: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/14.jpg)
Problema
Mi sistema maneja datos en unidades y formatos específicos, pero tengo que brindar
esos datos en otras unidades y formatos diferentes
![Page 15: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/15.jpg)
ProblemaEjemplo:
● Un usuario ingresa temperatura en °C, y pero otro desea visualizarlas en °F.
● Algunos usuarios ingresan la velocidad del viento en Km/h, otros en Mph, pero el sistema los procesa en m/s.
![Page 16: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/16.jpg)
Tip
Convertir la información en la frontera del sistema
![Page 17: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/17.jpg)
Veamos como crear nuestros propios field para manejar estas
conversiones.
![Page 18: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/18.jpg)
![Page 19: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/19.jpg)
![Page 20: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/20.jpg)
Otro ejemplo...
![Page 21: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/21.jpg)
¿Cómo usamos nuestros fields?
![Page 22: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/22.jpg)
¿Y el contexto?
![Page 23: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/23.jpg)
En la ‘view’:
En el ‘serializer’:
![Page 24: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/24.jpg)
Resumen:
● Crear tus propios ‘fields’ para manejar las transformaciones.
● Utilizar tus fields para crear los serializadores.
● Incluir en el contexto del serializador el contexto de la ‘request’ (para saber quien envia o solicita los datos).
![Page 25: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/25.jpg)
¿Lo vemos en acción?
![Page 26: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/26.jpg)
https://goo.gl/q6g1sZ
![Page 27: Lidiando con formatos y unidades en nuestra API REST - Python · Pampeano, vivo en San Rafael (Mza). Ingeniero en informática. Miembro de la Asociación Civil Python Argentina (Asociate!!)](https://reader034.vdocuments.mx/reader034/viewer/2022051808/6009e49650ee0e2c343f5bd5/html5/thumbnails/27.jpg)
¡MUCHAS GRACIAS!
Twitter:@matuvarelaTelegram: @m4tuu