Icono del sitio Blog de Programación y Desarrollo – Nube Colectiva

Como Crear una API REST con Django 3.1.1 + Consumir Datos en una Aplicación Android – Parte 3

Demo

En la anterior parte de este tutorial llamada Como Crear una API REST con Django 3.1.1 + Consumir Datos en una Aplicación Android – Parte 2 creamos la migración y la tabla para los usuarios que podrán hacer login y registrarse en la API mediante un correspondiente EndPoint, asimismo creamos 2 tablas para los datos de postres y jugos, estos datos el servidor solo podrá mostrarlos si el usuario inicio correctamente sesión y habiendo enviando y JWT (JSON Web token) respectivo, en esta Parte 3 vamos a continuar el tutorial Como Crear una API REST con Django 3.1.1 + Consumir Datos en una Aplicación Android, vamos con ello.

Partes

Antes de continuar te invito a leer los siguientes artículos:

Asimismo te invito a escuchar el Podcast: “Porque Debes Acostumbrarte A Resolver Los Problemas De Código Por Tu Cuenta”:

Spotify: Sound Cloud: Apple Podcasts:

Bien ahora continuemos con el Post: Como Crear una API REST con Django 3.1.1 + Consumir Datos en una Aplicación Android – Parte 3.

Desplegando Django REST Framework

Existe una herramienta muy usada para crear APIs REST en Django, esta se llama Django REST Framework y para poder usarla debemos instalarla ejecutando el siguiente comando en nuestra consola de comandos.


La ultima versión de Django REST Framework es la 3.12.4 , hasta la fecha de este Post lo es, en el futuro obviamente aparecerán nuevas versiones. Luego de instalar Django REST Framework, debemos de registrarlo en el archivo settings.py el cual se encuentra en api_rest_django > api_rest_django > settings.py 


Abrimos el archivo settings.py y dentro de el nos dirigimos a la sección que dice INSTALLED_APPS y registramos rest_framework.

Pruebas con un Endpoint Inicial

Ahora vamos a probar si la API REST esta funcionando sin problemas, para esto voy a insertar un par de jugos en la tabla jugos de la base de datos, esto lo haré manualmente desde phpMyAdmin, si tu deseas puedes manejar los datos mediante un sistema CRUD, te recomiendo leer el tutorial Como crear un CRUD con Django 3.1 (Python 3.9) y Bootstrap 4.6 – Parte 1.

Como crear un CRUD con Django 3.1 (Python 3.9) y Bootstrap 4.6 – Parte 1

Voy a mi tabla jugos e inserto un par de registros o jugos manualmente, estos son Jugo de Fresa y Jugo de Platano.

En la consola me dice que pude usar el siguiente comando para insertar el par de registros o jugos.


Verifico que se han insertado los 2 registros en mi tabla jugos.

Ya tenemos entonces datos en la base de datos, ahora vamos a crear el flujo para nuestro Endpoint /jugos, por ejemplo cuando yo solicite datos a la ruta http://localhost:8000/jugos/ mediante mi cliente que puede ser el navegador, aplicación android, la herramienta Postman, etc., me debe listar el par de jugos que tengo registrados en la base de datos.

Ahora crearé un archivo llamado serializers.py dentro del directorio jugos, esto porque usaremos datos de jugos y si por ejemplo usamos datos de postres, pues lo creamos también en el directorio postres, esto para mantener un orden.


Abro el archivo serializers.py y dentro de el importo Django REST Framework y mi modelo Jugos. Asimismo creo una clase llamada JugosSerializer y le paso el modelo Serializer de Django REST Framework, debajo uso el modelo Jugos, defino los campos que quiero enviar a mi Endpoint /jugos y le indico que no es necesario escribir un id de un registro para poder obtener los datos.


Ahora abro el archivo views.py que se encuentra en jugos > views.py


Dentro del archivo views.py importo algunos elementos que son importantes y necesarios para que el API REST funcione sin problemas, entre estas importaciones llamamos a la clase JugosSerializer que creamos anteriormente dentro del archivo serializers.py, también llamo al modelo Jugos y a otros elementos.

Asimismo creo un ViewSet con el nombre de clase JugosViewSet y dentro de el voy a llamar a los datos ordenándolos por id y le paso la clase JugosSerializer.


Por último para probar nuestro Endpoint /jugos, creamos una url dentro del archivo urls.py, este archivo se encuentra en api_rest_django > urls.py


Abrimos el archivo urls.py e importamos DefaultRouter de Django REST Framework y la vista jugos. Asimismo registramos la url jugos, le pasamos la clase JugosViewSet. Dentro de urlpatterns agregamos path(”, include(router.urls)).


Bien ahora inicio el servidor local de Django Framework.


Y si hago uso de la herramienta Postman que nos ayuda a probar nuestras APIs REST, hago una solicitud de tipo GET a mi Endpoint http://localhost:8000/jugos/, pues me lista los datos en formato JSON.

Con esto entonces verifico que mi API REST va por buen camino, ya hemos probado el Endpoint /jugos, pero falta colocarle una capa de seguridad llamada JWT (Json Web Tokens), porque cualquier usuario no puede acceder estos datos, a menos que este registrado y envíe un JWT al servidor, esto lo veremos más adelante junto con los demás Endpoints.

Ten Paciencia, lo que quiero es que conozcas bien como se crea este proyecto y no llenarte el capitulo de mucho contenido porque te puedes marear y no tendrás un óptimo aprendizaje. 

Nota (s)

 

Síguenos en nuestras Redes Sociales para que no te pierdas nuestros próximos contenidos.

Salir de la versión móvil