Saltar al contenido

Tutorial de Django

Django es un framework web de alto nivel que permite a los desarrolladores construir aplicaciones web de manera rápida y eficiente. Sigue el patrón arquitectónico Modelo-Plantilla-Vista (MTV) y utiliza el lenguaje de programación Python. Django es una opción popular para el desarrollo web debido a su flexibilidad, escalabilidad y características de seguridad.

Ventajas de usar Django

Escalabilidad

Django es altamente escalable y puede manejar una gran cantidad de solicitudes sin comprometer el rendimiento. Utiliza un sistema de caché que reduce la carga en la base de datos y acelera el tiempo de respuesta. Esto lo convierte en una opción ideal para el desarrollo de aplicaciones web a gran escala.

Seguridad

Django cuenta con varias características de seguridad integradas que protegen contra vulnerabilidades comunes de las aplicaciones web, como inyección SQL, scripting entre sitios (XSS) y falsificación de solicitudes entre sitios (CSRF). También incluye un sistema de autenticación que facilita la implementación de la autenticación y autorización de usuarios.

Versatilidad

Django es un framework versátil que puede utilizarse en una variedad de proyectos de desarrollo web. Cuenta con una gran cantidad de paquetes y bibliotecas de terceros que se pueden integrar fácilmente en tu proyecto. Django también es compatible con una amplia gama de bases de datos, lo que lo convierte en una opción flexible para el desarrollo web.

Primeros pasos con Django

Instalación

Para comenzar con Django, necesitarás instalar Python y Django en tu sistema. Python se puede descargar desde el sitio web oficial, y Django se puede instalar utilizando pip. Una vez que hayas instalado Django, puedes crear un nuevo proyecto con el siguiente comando:

Crear un proyecto de Django en Python

console
django-admin startproject projectname

Crear una aplicación web

Una vez que hayas creado un nuevo proyecto, puedes crear una aplicación web dentro del mismo con el siguiente comando:

Crear una aplicación web dentro de un proyecto de Django en Python

console
python manage.py startapp appname

Crear modelos

Django utiliza un sistema de Mapeo Objeto-Relacional (ORM) para interactuar con las bases de datos. Puedes crear tablas de base de datos utilizando clases de Python llamadas modelos. Aquí tienes un ejemplo de un modelo que representa una entrada de blog:

Crear tablas de base de datos usando clases de Python con Django

python
from django.db import models

class Post(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    date_posted = models.DateTimeField(auto_now_add=True)

Crear vistas

Las vistas son funciones de Python que manejan las solicitudes y devuelven respuestas. Se utilizan para renderizar plantillas y generar páginas HTML. Aquí tienes un ejemplo de una vista que renderiza una lista de entradas de blog:

Crear vistas usando Python y Django

python
from django.shortcuts import render
from .models import Post

def post_list(request):
    posts = Post.objects.all()
    return render(request, 'blog/post_list.html', {'posts': posts})

Crear plantillas

Las plantillas son archivos HTML que se utilizan para renderizar vistas. Pueden contener marcadores de posición para contenido dinámico que es generado por las vistas. Aquí tienes un ejemplo de una plantilla que renderiza una lista de entradas de blog:

Crear plantillas HTML en Python con Django

django
{% for post in posts %}
    <h2>{{ post.title }}</h2>
    <p>{{ post.content }}</p>
{% endfor %}

Configurar ajustes y URLs

Antes de ejecutar la aplicación, regístrala en los ajustes de tu proyecto. Abre projectname/settings.py y añade el nombre de tu aplicación a INSTALLED_APPS:

python
INSTALLED_APPS = [
    # ...
    'appname',
]

A continuación, conecta la vista a una URL. Crea un archivo urls.py en el directorio de tu aplicación y añade:

python
from django.urls import path
from . import views

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

Luego, incluye las URLs de la aplicación en el urls.py principal del proyecto:

python
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('appname.urls')),
]

Ahora puedes iniciar el servidor de desarrollo para verificar tu configuración:

console
python manage.py runserver

Conclusión

Django es un potente framework web que puede ayudar a los desarrolladores a construir aplicaciones web escalables, seguras y versátiles. Siguiendo los pasos descritos en este artículo, podrás comenzar con Django y empezar a construir tus propias aplicaciones web hoy mismo.

¿Te resulta útil?

Vista previa dual-run — compárala con las rutas Symfony en producción.