Proyecto Final - Parte 1¶
Introducción¶
En esta Parte 1 del proyecto, vamos a crear la base de nuestro gestor personal. Comenzaremos por la creación del proyecto en Django, la configuración del entorno virtual y la instalación de Django. Luego, crearemos dos aplicaciones principales: contact (para gestionar los contactos) y todo (para gestionar las tareas).
Modificaremos el archivo settings.py para añadir nuestras aplicaciones, y delegaremos las URLs para cada aplicación. Además, realizaremos las migraciones iniciales y verificaremos que todo funciona correctamente antes de continuar con el desarrollo de las funcionalidades CRUD.
Desarrollo¶
1. Creación del entorno virtual y del proyecto Django¶
Para comenzar, debemos crear un entorno virtual donde instalaremos Django y el resto de las dependencias. Realiza los siguientes pasos:
- Crea la carpeta del proyecto:
Abre tu terminal y navega al directorio donde quieras crear el proyecto. Luego, ejecuta el siguiente comando para crear la carpeta:
mkdir agenda
cd agenda
- Crea y activa el entorno virtual:
Crea el entorno virtual con el siguiente comando:
python -m venv venv
Luego, activa el entorno virtual:
-
En Windows:
* En macOS/Linux:venv\Scripts\activatesource venv/bin/activate -
Instala Django:
Una vez activado el entorno virtual, instala Django:
pip install django
- Crea el proyecto Django:
Ahora, crea el proyecto Django con el siguiente comando:
django-admin startproject agenda .
Esto generará una estructura básica de proyecto. En este momento, la estructura será:
agenda/
└── agenda/
├── manage.py
- Verifica que todo funciona:
Ejecuta el servidor de desarrollo para verificar que todo está funcionando correctamente:
python manage.py runserver
Si todo está bien, puedes visitar http://127.0.0.1:8000/ en tu navegador y ver la página de bienvenida de Django.
2. Creación de las aplicaciones: contact y todo¶
Ahora, vamos a crear las dos aplicaciones necesarias para este proyecto: contact y todo.
- Crea la aplicación
contact:
Ejecuta el siguiente comando en la raíz del proyecto:
python manage.py startapp contact
Esto generará una estructura básica para la aplicación de contactos:
agenda/
└── contact/
├── admin.py
├── apps.py
├── models.py
├── views.py
├── migrations/
└── tests.py
- Crea la aplicación
todo:
De la misma manera, crea la aplicación para las tareas:
python manage.py startapp todo
Esto generará la estructura para la aplicación de tareas:
agenda/
└── todo/
├── admin.py
├── apps.py
├── models.py
├── views.py
├── migrations/
└── tests.py
3. Modificar settings.py¶
Ahora, debemos asegurarnos de que Django reconozca nuestras aplicaciones. Abre el archivo agenda/settings.py y en la lista INSTALLED_APPS, añade las dos aplicaciones creadas: contact y todo.
INSTALLED_APPS = [
# Apps de Django
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# Nuestras apps
'contact',
'todo',
]
4. Configurar las URLs del proyecto¶
Ahora, vamos a configurar las rutas de las aplicaciones. Abre el archivo agenda/urls.py y modifica el contenido para que delegue las URLs a las aplicaciones contact y todo.
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('contact/', include('contact.urls')), # Añadimos las URLs de la aplicación de contactos
path('todo/', include('todo.urls')), # Añadimos las URLs de la aplicación de tareas
]
5. Crear las URLs en las aplicaciones¶
Deberemos crear los archivos urls.py en cada aplicación para definir las rutas específicas para los contactos y las tareas. Comienza por crear el archivo urls.py en la carpeta contact.
- Crea el archivo
urls.pyen la aplicacióncontact:
En la carpeta contact, crea un archivo urls.py con el siguiente contenido:
from django.urls import path
from . import views
urlpatterns = [
# Añadimos las rutas de los contactos aquí
]
- Crea el archivo
urls.pyen la aplicacióntodo:
De la misma manera, crea un archivo urls.py en la carpeta todo:
from django.urls import path
from . import views
urlpatterns = [
# Añadimos las rutas de las tareas aquí
]
6. Realizar las migraciones iniciales¶
Para terminar esta primera parte, vamos a realizar las migraciones iniciales de la base de datos de Django:
python manage.py migrate
Esto creará las tablas necesarias en la base de datos.
7. Verificación¶
Podemos hacer una chequeo para ver que todo esté funcionando:
python manage.py check
Nos puede advertir de algún Warning pero no debería haber ningún Error. Los Warningpueden ser porque hemos configurado las carpetas para los templates y los static pero aún no hemos creado esas carpetas.
Ahora puedes ejecutar el servidor nuevamente para asegurarte de que todo esté funcionando:
python manage.py runserver
Accede a http://127.0.0.1:8000/ para ver si la configuración inicial ha sido exitosa.
Tendremos un error 404 NOT FOUND porque aún no hemos creado ninguna vista ni ruta, pero al menos el servidor estará funcionando correctamente. puedes probar la ruta de admin:
http://127.0.0.1:8000/admin/
Esta ruta sí que debe funcionar y mostrarte la página de login del administrador de Django.
Resumen de la Parte 1¶
En esta primera parte, hemos creado la estructura básica de un proyecto Django, configurado el entorno virtual, instalado Django y creado las dos aplicaciones principales (contact y todo). Además, hemos realizado las migraciones iniciales y verificamos que todo estuviera funcionando correctamente.