¿Qué es Django 3 framework y para qué usarlo para desarrollar apps web?

- Andrés Cruz

In english
¿Qué es Django 3 framework y para qué usarlo para desarrollar apps web?

Django es un framework excelente y el más famoso o al menos el primero que nos viene a la mente cuando hablamos de Python web; Django nos ofrece desde la instalación del framework todo lo necesario para crear proyectos de pequeña o gran envergadura; Django 3 es un framework potente cuyas ventajas principales son:

  • Creación de aplicaciones modulares
  • Programación en el lenguaje de programación multipropósito de Python
  • TODO el ecosistema de Python para desarrollar nuestras apps web
  • Múltiples paquetes que podemos instalar mediante pip y emplearlos en nuestro proyecto ya sea a de Python o propiamente para Django
  • Nos trae un completo módulo o aplicación para realizar la gestión de datos, es decir, los famosos CRUD
  • Diseñar nuestras propias URLs amigables fácilmente
  • Un efectivo enfoque para mantener los requerimientos del proyecto

Vamos a hablar sobre otras características fundamentales sobre el framework como:

Creando un módulo de gestión rápidamente, dinámica y personalizado con la app de admin

Un proyecto de Django, cuenta con varias aplicaciones, una de las más interesantes es la aplicación llamada admin que que nos viene de gratis cuando creamos un proyecto de Django tiene un alto nivel de personalización que va desde definir como presentar los distintos elementos del CRUD, agrupar elementos de formulario, así como definir tipos de campo, registra formularios relacionados, organización de la tabla o listado, definir filtros y campos de búsqueda, cambiar el estilo y un largo etc para crear aplicaciones personalizada a nuestros clientes.

MTV para todo

La estructura de un proyecto en Django es basado en el patrón MTV que ya lo hablamos en una anterior entrada, por lo tanto, tenemos una organización de primera para dividir nuestro desarrollo en capas o niveles.

Un completo ORM para gestionar nuestra base de datos

Tenemos un completo ORM o Objeto Modelo Relacional, muy ágil de emplear y podemos crear todo tipo de estructura y relaciones con nuestra base de datos fácilmente y eficientemente.

Migraciones para tener la estructura de nuestra base de datos

Maneja un sistema de migraciones en base a clases modelos que definimos que tiene una relación de uno a uno entre el modelo y la migración.

Para crear una migración lo podemos hacer fácilmente y eficientemente, ya que la podemos generar mediante la línea de comandos y toda como código fuente la clase Modelo de nuestro MTV.

Línea de comandos eficiente y precisa

Posee una sencilla línea de comandos para hacer operaciones recurrentes en nuestro proyecto que van desde gestionar las migraciones, crear súper usuarios hasta un sencillo servidor web de desarrollo.

Apps más completas y menos código

Gracias a que estamos trabajando en un ecosistema Python, nos permite extender nuestra app mediante miles de componentes o paquetes que podemos instalar y configurar rápidamente para dotar a nuestra aplicación de más características.

Podemos extender la aplicación de manera modular para una fácil reutilización de estos componentes modulares.

Desarrollado mediante Python, el lenguaje de programación de momento, multifuncional y sintácticamente amigable y muy limpio.

Aparte de todo esto, Django es un framework que viene con todo lo que necesitamos para hacer las aplicaciones más comunes de una manera versátil y escalable.

Apps versátiles

Django es un framework con la cual puedes construir cualquier tipo de aplicación desde nuestro MTV: desde Rest Apis, tiendas en líneas como hacemos en nuestro curso, Blogs y devolver el contenido en cualquier formato como HTML, RSS, JSON, etc.

Framework seguro

Django, al igual que ocurre con otros frameworks como Laravel o CodeIgniter o el mismo Flask, es un framework seguro; que en gran medida se lo debemos a sus capas del MTV, pero también en la protección de elementos sensibles como contraseñas mediante hash; gracias a nuestro ORM también podemos saltarnos vulnerabilidades en base a la inyección del SQL, evitar ataques CSRF y muchísimo más.

Escalable

Un proyecto en Django consta de una o múltiples aplicaciones, las cuales pueden compartir recursos fácilmente y de manera segura gracias al ecosistema de Python y nuevamente gracias a la separación por capas que nos ofrece el propio framework MTV.

Portable

Al poder ejecutar Python en los Sistemas Operativos más famosos como lo son Windows, Linux y MacOs, Django lo podemos ejecutar y desarrollar en donde queramos de una manera sencilla, configurable y segura.

Instalar Python

Primero necesitamos instalar Python que y lo hablamos en una anterior entrada por si te surge alguna duda.

Instalación de Django 3

Ahora, con nuestro Python ya listo, lo siguiente que vamos a hacer es instalar Django, que lo podemos instalar fácilmente nuestro gestor de paquetes que lo tenemos de gratis en Python 3:

python -m pip install Django

Y ya con esto podemos empezar a desarrollar nuestras aplicaciones en Django y crear el juego de proyecto/aplicación que lo trataremos en una posterior entrada, pero para no dejarte en ascuas; un proyecto tiene múltiples aplicaciones y los proyectos en Django tienen un orden bien peculiar;  aquí lo primero que tienes que entender es cómo está formado un proyecto en Django, y es que en un proyecto nosotros podemos tener múltiples aplicaciones como la que manejamos en nuestro curso de Django:

Proyecto Django

Cómo empezar con Django

Recuerda que si te interesa desarrollar en Django, en nuestro curso de Django que puedes tomar en esta plataforma podrás aprender esto y mucho más.

Puedes obtener más información en la documentación oficial y recuerda que en siguientes guías vamos a ver como usar Django para desarrollar nuestros proyectos.

Vamos a empezar a crear una aplicación básica, para eso lo primero que necesitas conocer es cómo crear un proyecto y aplicación en Django, aparte de para qué sirve cada una de ellas ya que son los componentes claves en cualquier proyecto de Django.

Una vez tengas ya listo tu Django instalado en tu equipo, y tu proyecto y al menos una aplicación generado, lo siguiente que seguramente quieres hacer, es echar tu primera línea de código, tu hola mundo en Django que es la carta de presentación en cualquier lenguaje de programación o framework que quieras iniciar.

Un punto muy importante en Django, es que parte del MTV es formado por un ruteo, que nosotros tenemos que definir para conectar la URLs a una vista en Django, y esto lo podemos hacer fácilmente con un archivo de configuración para tal fin que nos permite mapear todos los componentes.

Las bases de datos son un componente fundamental hoy en día que nos permite hacer todos nuestros datos persistentes y por lo tanto llevar nuestro proyecto en Django a otro nivel; pero para eso necesitas aprender cómo realizar esta conexión a una base de datos MySQL con Django correctamente.

Una vez conectada a la base de datos, necesitamos trabajar con la capa de los datos, que no puede ser otra que la del modelo, que nos permite ir conectándonos a una tabla (ya previamente creada mediante las migraciones) en particular para ya sea obtener datos, eliminarlos, actualizarlos o simplemente crear nuevos registro.

Así que en este punto ya tenemos todo listo, y podemos hacer algo más interesante cómo crear nuestras primeras vistas, las vistas más sencillas o una de las más sencillas que podemos construir serían la de listados en Django, para mostrar un conjunto de registros; aquí trabajamos por completo con nuestro MTV, para definir la lógica para manipular los datos, obtener los datos y desplegarlos en un template HTML con ayuda de unas directivas de Django.

Recuerda que puedes consultar el listado

Andrés Cruz

Desarrollo con Laravel, Django, Flask, CodeIgniter, HTML5, CSS3, MySQL, JavaScript, Vue, Android, iOS, Flutter

Andrés Cruz en Udemy

Acepto recibir anuncios de interes sobre este Blog.