Introducción a Django

¿Qué es Django?

Django es un framework de desarrollo web para el lenguaje Python. Permite crear aplicaciones web completas de manera rápida, segura y estructurada, siguiendo el patrón de diseño Modelo–Vista–Controlador (MVC), que en Django se denomina Modelo–Vista–Template (MVT).

Algunas características destacadas:

  • Incluye un servidor de desarrollo integrado.
  • Proporciona un sistema de plantillas para generar páginas HTML dinámicas.
  • Permite interactuar con bases de datos mediante un ORM (Object Relational Mapper).
  • Dispone de un panel de administración web listo para usar.
  • Incluye herramientas de seguridad (autenticación, CSRF, inyección SQL, etc.).

Entorno virtual y dependencias

Cada proyecto Django necesita un entorno virtual que aísle sus librerías del resto del sistema. Esto evita conflictos entre versiones de dependencias y permite que cada aplicación tenga su propio conjunto de paquetes.

Creación de la base de datos

Antes de probar nuestra aplicación tenemos que crear las tablas necesarias en la base de datos SQlite que utiliza la aplicación. Para crear las tablas necesarias, ejecuta:

python3 manage.py migrate

Servidor de desarrollo

Para probar la aplicación, Django ofrece un servidor de desarrollo que permite ejecutar el proyecto localmente.

Se arranca con:

python3 manage.py runserver

y, por defecto, estará disponible en http://localhost

.

Este servidor detecta cambios automáticamente y se reinicia, por lo que resulta ideal para fase de desarrollo. No debe usarse en producción.

Panel de administración de Django

Una de las grandes ventajas del framework es el panel de administración que incluye por defecto. Permite gestionar el contenido de la base de datos desde una interfaz web, sin escribir código HTML ni SQL.

Para acceder a la zona de administración necesitamos crear un usuario privilegiado en nuestra aplicación para ello:

python3 manage.py createsuperuser

Para acceder usamos la ruta http://localhost

/admin/.