8.2 Django (framework de desarrollo web): Cómo usar el framework Django para crear aplicaciones web

Introducción a Django

Django es un framework de desarrollo web en Python que permite crear aplicaciones web de manera rápida y eficiente. Se basa en el patrón de diseño Modelo-Vista-Controlador (MVC) y ofrece una gran cantidad de herramientas y funciones para el desarrollo de aplicaciones web.

Instalación

Para empezar a trabajar con Django, es necesario instalarlo en nuestro sistema. Se puede hacer mediante pip, el gestor de paquetes de Python. Ejecutamos el siguiente comando en la terminal:

pip install Django

Crear un proyecto en Django

Una vez instalado Django, podemos crear un nuevo proyecto mediante el comando:

django-admin startproject nombre_proyecto

Este comando creará una nueva carpeta con el nombre del proyecto, que contendrá los archivos necesarios para su funcionamiento.

Crear una aplicación en Django

Django nos permite crear aplicaciones independientes dentro del proyecto mediante el comando:

python manage.py startapp nombre_app

Esto creará una nueva carpeta con el nombre de la aplicación, que contendrá los archivos necesarios para su funcionamiento y se integrará al proyecto.

Configuración de la base de datos

Django utiliza un ORM (Object Relational Mapper) que nos permite trabajar con la base de datos utilizando objetos de Python. Para utilizar la base de datos, debemos configurarla en el archivo settings.py. Por defecto, Django utiliza SQLite, pero se puede cambiar a otro gestor de base de datos como MySQL o PostgreSQL. Un ejemplo de configuración para MySQL:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'nombre_base_datos',
        'USER': 'usuario',
        'PASSWORD': 'contraseña',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

Crear un modelo

Los modelos en Django se utilizan para definir la estructura de la base de datos. Se crean en un archivo models.py dentro de la aplicación. Un ejemplo de modelo:

from django.db import models

class Persona(models.Model):
    nombre = models.CharField(max_length=50)
    edad = models.IntegerField()
    fecha_nacimiento = models.DateField()

    def __str__(self):
        return self.nombre

En este modelo se define una clase Persona que contiene tres atributos: nombre, edad y fecha_nacimiento. También se define una función __str__ que devuelve el nombre de la persona. Con esto, Django generará automáticamente una tabla en la base de datos con los campos definidos.

Crear una vista

Las vistas en Django se encargan de procesar las solicitudes HTTP y generar la respuesta correspondiente. Se crean en un archivo views.py dentro de la aplicación. Un ejemplo de vista:

from django.shortcuts import render
from .models import Persona

def lista_personas(request):
    personas = Persona.objects.all()
    return render(request, 'lista_personas.html', {'personas': personas})

En esta vista se define una función lista_personas que consulta todas las personas en la base de datos y las envía a un archivo HTML llamado lista_personas.html para su visualización. La función render de Django es la encargada de procesar este archivo y enviar la respuesta al cliente.

Crear una plantilla

Las plantillas en Django se utilizan para definir la estructura de las páginas HTML. Se crean en una carpeta llamada templates dentro de la aplicación. Un ejemplo de plantilla:




    Lista de Personas


    

Lista de Personas

    {% for persona in personas %}
  • {{ persona }}
  • {% endfor %}

En esta plantilla se define una lista con todas las personas y se utiliza una etiqueta {% for %} de Django para recorrerlas e imprimir su nombre en la página.

URLs

Para asociar una vista con una URL, se deben definir las rutas en el archivo urls.py de la aplicación. Un ejemplo:

from django.urls import path
from . import views

urlpatterns = [
    path('lista_personas/', views.lista_personas, name='lista_personas'),
]

En este archivo se define una ruta que utiliza la vista lista_personas y se le asigna el nombre lista_personas para poder referenciarla fácilmente en otras partes del proyecto.

Conclusiones

Django es un framework de desarrollo web potente y fácil de utilizar que nos permite crear aplicaciones web robustas y escalables. Además, cuenta con una gran cantidad de herramientas y funciones que nos facilitan el trabajo y nos permiten trabajar de manera más productiva. Utilizando los conceptos aprendidos en este punto, podemos desarrollar aplicaciones web completas y funcionales en poco tiempo.

AnteriorSiguiente

[mwai_chat]

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *