Guía de inicio de Django: construye rápidamente tu primera aplicación web
2/19/2026
7 min read
# Guía de inicio de Django: construye rápidamente tu primera aplicación web
Django es un framework web de Python de alto nivel, cuyo objetivo es el desarrollo rápido y el diseño limpio. Sigue la arquitectura Modelo-Plantilla-Vista (MTV) y fomenta la reutilización de código y la modularización. Esta guía te guiará paso a paso en la creación de una aplicación Django sencilla, para que puedas empezar rápidamente.
## 1. Configuración del entorno
Primero, debes asegurarte de que Python esté instalado en tu sistema. Django recomienda usar Python 3.6 o superior.
### 1.1 Instalar Python
Si Python no está instalado en tu sistema, puedes descargarlo e instalarlo desde el [sitio web oficial de Python](https://www.python.org/downloads/).
### 1.2 Crear un entorno virtual (Virtual Environment)
Para aislar las dependencias entre diferentes proyectos, se recomienda encarecidamente utilizar un entorno virtual.
1. Abre una terminal o símbolo del sistema.
2. Crea un directorio de proyecto, por ejemplo `myproject`:
```bash
mkdir myproject
cd myproject
```
3. Crea y activa el entorno virtual:
```bash
python3 -m venv venv # o python -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # Windows
```
Después de activar el entorno virtual, el indicador de tu terminal mostrará `(venv)`, lo que indica que estás utilizando el entorno virtual.
### 1.3 Instalar Django
En el entorno virtual activado, usa pip para instalar Django:
```bash
pip install Django
```
Verifica si la instalación fue exitosa:
```bash
python -m django --version
```
Deberías poder ver el número de versión de Django.
## 2. Crear un proyecto Django
Después de instalar Django, puedes crear un nuevo proyecto Django.
1. Aún en tu directorio de proyecto (`myproject`), ejecuta el siguiente comando:
```bash
django-admin startproject mysite
```
Esto creará un directorio llamado `mysite` dentro del directorio `myproject`, que contiene los archivos esqueleto del proyecto Django.
2. Entra al directorio `mysite`:
```bash
cd mysite
```
3. La estructura del directorio del proyecto Django es la siguiente:
```
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
```
* `manage.py`: Una herramienta de línea de comandos para administrar el proyecto Django.
* `mysite/`: Un paquete de Python que contiene la configuración del proyecto.
* `__init__.py`: Un archivo vacío que le dice a Python que este directorio debe ser tratado como un paquete de Python.
* `settings.py`: El archivo de configuración del proyecto, como la configuración de la base de datos, el modo de depuración, etc.
* `urls.py`: Configuración de enrutamiento de URL, que mapea las URL a las funciones de vista.
* `asgi.py`: Archivo de configuración ASGI (Asynchronous Server Gateway Interface), utilizado para implementar aplicaciones asíncronas.
* `wsgi.py`: Archivo de configuración WSGI (Web Server Gateway Interface), utilizado para implementar aplicaciones síncronas tradicionales.
## 3. Iniciar el servidor de desarrollo
Django viene con un servidor de desarrollo ligero que facilita el desarrollo y las pruebas locales.
1. En el directorio `mysite`, ejecute el siguiente comando:
```bash
python manage.py runserver
```
2. Abra su navegador y visite `http://127.0.0.1:8000/`. Debería ver la página "It worked! Congratulations on your first Django-powered page.".
## 4. Crear una aplicación Django
Un proyecto Django puede contener varias aplicaciones. Creemos una aplicación llamada `myapp`.
1. Abra una nueva ventana de terminal (mantenga el servidor de desarrollo en ejecución).
2. En el directorio `mysite`, ejecute el siguiente comando:
```bash
python manage.py startapp myapp
```
Esto creará un directorio llamado `myapp` en el directorio `mysite`, que contiene los archivos esqueleto de la aplicación Django.
3. La estructura del directorio de la aplicación Django es la siguiente:
```
myapp/
__init__.py
admin.py
apps.py
migrations/
__init__.py
models.py
tests.py
views.py
```
* `__init__.py`: Un archivo vacío que le dice a Python que este directorio debe ser tratado como un paquete de Python.
* `admin.py`: Se utiliza para configurar el panel de administración de Django.
* `apps.py`: Configuración de la aplicación.
* `migrations/`: Se utiliza para gestionar las migraciones de la base de datos.
* `models.py`: Define los modelos de datos (tablas de la base de datos).
* `tests.py`: Escribe casos de prueba.
* `views.py`: Define las funciones de vista, maneja las solicitudes y devuelve las respuestas.
4. En `mysite/settings.py`, agregue `myapp` a la lista `INSTALLED_APPS`:
```python
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myapp', # 添加 myapp -> agregar myapp
]
```
## 5. Crear una vista simple
Ahora crearemos una vista simple para mostrar "Hello, Django!" en el navegador.
1. Edite el archivo `myapp/views.py` y agregue el siguiente código:
```python
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, Django!")
```
2. Cree un archivo `myapp/urls.py` y asigne la URL a la función de vista:
```python
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
```
3. Incluye `myapp/urls.py` en `mysite/urls.py`:
```python
from django.urls import include, path
from django.contrib import admin
urlpatterns = [
path('admin/', admin.site.urls),
path('myapp/', include('myapp.urls')), # Añade la configuración de URL de myapp
]
```
4. Visita `http://127.0.0.1:8000/myapp/`. Deberías ver la página "Hello, Django!".
## 6. Crea un modelo
Vamos a crear un modelo sencillo para almacenar algunos datos.
1. Edita el archivo `myapp/models.py`, añade el siguiente código:
```python
from django.db import models
class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def __str__(self):
return self.question_text
```
Esto define un modelo llamado `Question`, que contiene dos campos: `question_text` (CharField) y `pub_date` (DateTimeField).
2. Crea y aplica las migraciones de la base de datos:
```bash
python manage.py makemigrations myapp
python manage.py migrate
```
El comando `makemigrations` creará archivos de migración basados en tu modelo, y el comando `migrate` aplicará las migraciones a la base de datos.
## 7. Usa el panel de administración de Django
Django proporciona un potente panel de administración que facilita la gestión de tus datos.
1. Crea un superusuario:
```bash
python manage.py createsuperuser
```
Sigue las instrucciones para introducir el nombre de usuario, el correo electrónico y la contraseña.
2. Edita el archivo `myapp/admin.py`, registra el modelo `Question`:
```python
from django.contrib import admin
from .models import Question
admin.site.register(Question)
```
3. Visita `http://127.0.0.1:8000/admin/`, inicia sesión con el superusuario que has creado. Deberías ver el módulo "Questions", donde puedes añadir, editar y eliminar preguntas.
## 8. Usa plantillas
Usar plantillas permite generar páginas HTML de forma más flexible.1. En el directorio `myapp`, crea un directorio llamado `templates` y dentro de `templates` crea otro directorio llamado `myapp` ( `myapp/templates/myapp` ).\n\n2. En el directorio `myapp/templates/myapp`, crea un archivo llamado `index.html` y añade el siguiente código:\n\n ```html\n \n \n \n
Hello, Django!
\n La hora actual es: {{ current_time }} \n \n \n ```\n\n3. Edita el archivo `myapp/views.py` y utiliza la plantilla:\n\n ```python\n from django.shortcuts import render\n import datetime\n\n def index(request):\n now = datetime.datetime.now()\n return render(request, 'myapp/index.html', {'current_time': now})\n ```\n\n La función `render` cargará la plantilla y pasará los datos a la plantilla para su renderización. // `render` function will load the template and pass the data to the template for rendering.\n\n4. Vuelve a visitar `http://127.0.0.1:8000/myapp/`. Deberías ver una página que contenga la hora actual.\n\n## 9. Conclusión\n\nA través de esta guía, has aprendido los conceptos básicos de Django y cómo usarlo, incluyendo la configuración del entorno, la creación de proyectos y aplicaciones, la definición de modelos, la creación de vistas y el uso de plantillas. Esto es solo el comienzo, Django ofrece una gran cantidad de funciones que puedes seguir aprendiendo y explorando para construir aplicaciones web más complejas.Published in Technology





