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

7 minuto(s)

Demo

En la parte 1 de este tutorial llamada Como Crear una API REST con Django 3.1.1 + Consumir Datos en una Aplicación Android – Parte 1 creamos el nuevo proyecto en Django Framework, asimismo configuramos la Base de Datos MySQL en donde almacenaremos nuestros datos, previamente configuramos el cliente para Python y MySQL, en este Parte 2 vamos a crear las migraciones y las tablas de nuestra Base de datos, entre otras tareas, vamos con ello.

Partes

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

Asimismo te invito a escuchar el Podcast: “Herramientas Online Para El Trabajo En Equipo”:

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 2.

En la Parte 1 de este tutorial mencione que el proyecto constará de 5 EndPoints los cuales serán /login/registro/listarpostres/listarusuarios y /listarjugos y para que los usuarios puedan leer por ejemplo los datos de postres y de jugos, deberá enviar un token (JWT = JSON Web Token) en su solicitud, con esto le damos una capa de seguridad a nuestra API REST.

Cuando creamos nuestro proyecto con Django Framework este automáticamente nos crea archivos de migraciones nativas para montar un sistema de login y registro de manera rápida ejecutando el comando nativo de Django Framework para crear tablas en la base de datos, este comando nos crea varias tablas junto con la tabla auth_user y con esta tabla vamos a gestionar el EndPoint de login y registro, entonces lo que si tendríamos que crear son las tablas postres y jugos mediante migraciones.

Tabla usuarios (Login y Registro)

Como mencione anteriormente Django nos provee de migraciones para crear varias tablas que formarán parte del sistema de autenticación de nuestro sistema, para esto ejecutamos primero el siguiente comando para verificar si hay cambios en los archivos de migraciones.


Tras ejecutar el comando anterior, la consola me dice que no hay cambios detectados, esto es bueno, entonces pasemos a ejecutar el siguiente comando que creará las tablas para el sistema de autenticación (login y registro), adicionalmente Django nos crea otras tablas que son indispensables para que funcione correctamente, no debemos tocar esas tablas porque se puede dañar Django Framework.


Luego de ejecutar el comando anterior, se me ha creado las tablas en la base de datos para el sistema de autenticación, si voy a PHPMyAdmin debería ver las tablas creadas.

Con estas tablas y sobre todo con la tabla auth_user la cual es la tabla en donde se van almacenar los usuarios, es con la que gestionaremos los EndPoints /login/registro, y /listarusuarios de nuestra API REST con Django.

Mencionar que si corres el servidor de Django y accedes a la URL local http://127.0.0.1:8000/admin debe aparecer un formulario de login para iniciar sesión.

Bueno ya que no tenemos un usuario creado aún, voy a crear un super usuario en mi base de datos, para esto ejecuto el siguiente comando, ingreso los datos que me solicite hasta que el usuario se haya creado.


Si voy a la tabla auth_user, puedo ver que se ha creado mi usuario.

Bien con esto ya tenemos nuestro usuario el cual usaremos para hacer login mediante nuestro API REST y pasandole un JWT (JSON Web Tokens), esto lo veremos más adelante.

Tabla postres y jugos

Bien ahora vamos a crear las tablas postres y jugos que servirán para los EndPoints /listarpostres y /listarjugos.

Postres

Voy a mi consola de comandos y ejecuto primero el siguiente comando para crear la app postres junto con su archivo de migración.


Paso seguido ejecuto el comando anterior pero para la app jugos.


En la consola no pasa nada, pero si vamos al directorio principal de nuestro proyecto podemos ver que se nos ha creado 2 directorios llamados postres y jugos.


Dentro de ambos directorios postres y jugos se han creado varios archivos y una carpeta llamada migrations, asimismo hay un archivo llamado models.py y en el vamos a definir los campos de cada tabla, entonces abrimos primero el archivo models.py de la app postres, este archivo se encuentra en postres > models.py


Dentro del archivo models.py  voy a definir los campos nombrepreciostockimgcreated_at y updated_at, el campo id Django Framework lo creará automáticamente.

Jugos

Igualmente para la app jugos abrimos primero el archivo models.py de la app jugos, este archivo se encuentra en jugos > models.py


Dentro del archivo models.py  voy a definir los campos nombrepreciostockimgcreated_at y updated_at, el campo id Django Framework lo creará automáticamente.


Antes de proceder a preparar y crear las tablas postres y jugos, debemos de registrar las apps en nuestro archivo de configuración settings.py, este archivo en encuentra en api_rest_django > api_rest_django > settings.py 


En el archivo settings.py nos dirigimos a la sección que dice INSTALLED_APPS y registramos la app postres y la app jugos.


Guardamos el archivo y ahora si procedemos primero a crear la tabla postres, para esto ejecutamos el siguiente comando.


Con el comando anterior hemos preparado nuestra migración antes de crear la tabla postres, ahora ejecutamos el siguiente comando para crear la tabla postres en nuestra base de datos.


Bien si vamos a PHPMyAdmin podemos ver que se ha creado la tabla postres, con los campos establecidos.

Hacemos los mismo con la tabla jugos, ejecutamos primero el siguiente comando.


Igualmente con el comando anterior hemos preparado nuestra migración antes de crear la tabla jugos, ahora ejecutamos el siguiente comando para crear la tabla jugos en nuestra base de datos.


Entonces igualmente si vamos a PHPMyAdmin podemos ver que se ha creado la tabla jugos, con los campos establecidos.

Bien hasta aquí llegamos con esta Parte 2 en donde creamos las tablas para los usuarios con las migraciones nativas de Django Framework, asimismo creamos las tablas postres y jugos.

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)

  • En la siguiente parte comenzaremos a crear los EndPoints de nuestra API REST y realizaremos pruebas para verificar si funcionan correctamente.
  • No olvides que debemos usar la Tecnología para hacer cosas Buenas por el Mundo. 

 

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