Está en la página 1de 13

DESARROLLO DE APLICACIONES EMPRESARIALES

LABORATORIO N° 04
RELACIÓN DE MODELOS EN DJANGO.

Alumno Nota
MAMANI.MAMANI. Renzo. Junior
Grupo
Fecha de Entrega
Docente Renato Usnayo Cáceres

DISEÑO Y DESARROLLO DE SOFTWARE


PROGRAMA DE FORMACIÓN REGULAR
Laboratorio de Desarrollo de Aplicaciones
Página | 1
Empresariales

OBJETIVOS:
 Configurar tablas relacionadas en Django.

SEGURIDAD:

Advertencia:
En este laboratorio está prohibida la manipulación del hardware, conexiones
eléctricas o de red; así como la ingestión de alimentos o bebidas.

FUNDAMENTO TEÓRICO:
 Revisar el texto guía que está en el campus Virtual.

NORMAS EMPLEADAS:
 No aplica

RECURSOS:
 En este laboratorio cada alumno trabajará con un equipo con Windows 10.

METODOLOGÍA PARA EL DESARROLLO DE LA TAREA:


 El desarrollo del laboratorio es individual

Aprender es como remar contra corriente: en cuanto se deja, se retrocede (Edward Benjamin
Britten)
PROCEDIMIENTO:
Paso 1: Crear un entorno virtual

Antes de comenzar un nuevo proyecto de Django, crea un entorno virtual. Puedes utilizar la herramienta
venv que viene con Python. Abre tu terminal y ejecuta los siguientes comandos:

python -m venv myenv

Esto creará un nuevo entorno virtual llamado "myenv" en el directorio actual.

Paso 2: Activar el entorno virtual

Una vez que hayas creado el entorno virtual, actívalo:

myenv\Scripts\activate

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 2
Empresariales

Después de activar el entorno virtual, notarás que el prompt de la terminal cambia para indicar que
estás trabajando dentro del entorno virtual.

Paso 3: Instalar Django y otras dependencias

Dentro del entorno virtual, puedes instalar Django y otras dependencias específicas para tu proyecto.
Ejecuta el siguiente comando para instalar Django:

pip install django

Desactivar el entorno virtual (opcional)

Cuando hayas terminado de trabajar en tu proyecto, puedes desactivar el entorno virtual con el
siguiente comando:

deactivate

En tu terminal ejecuta los siguientes comandos:

django-admin startproject proyecto_relacion_modelos


cd proyecto_relacion_modelos

Crear una aplicación

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 3
Empresariales

Dentro de tu proyecto, crea una nueva aplicación llamada "blog" (o cualquier otro nombre que
desees):

python manage.py startapp blog

Define los modelos


En la aplicación "blog", en el archivo models.py, define dos modelos: "Autor" y "Entrada". Los
modelos deben contener campos y relaciones entre sí.

from django.db import models

class Autor(models.Model):
nombre = models.CharField(max_length=100)
correo = models.EmailField()

def __str__(self):
return self.nombre

class Entrada(models.Model):
titulo = models.CharField(max_length=200)
contenido = models.TextField()
autor = models.ForeignKey(Autor, on_delete=models.CASCADE)
fecha_publicacion = models.DateTimeField(auto_now_add=True)

def __str__(self):
return self.titulo

En este ejemplo, hemos creado dos modelos: "Autor" y "Entrada". La "Entrada" tiene una clave
externa (ForeignKey) que establece una relación con el modelo "Autor".

Registrar los modelos


En el archivo admin.py de la aplicación "blog", registra los modelos para que puedas
administrarlos en la interfaz de administración de Django. Abre blog/admin.py y agrega lo
siguiente:

from django.contrib import admin


from .models import Autor, Entrada

admin.site.register(Autor)

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 4
Empresariales

admin.site.register(Entrada)

Realizar las migraciones


Ahora, necesitas aplicar las migraciones para crear las tablas en la base de datos. Ejecuta los
siguientes comandos:

python manage.py makemigrations

python manage.py migrate

Crear un superusuario
Para acceder a la interfaz de administración, crea un superusuario con el siguiente comando:

python manage.py createsuperuser

Sigue las instrucciones para ingresar un nombre de usuario, correo electrónico y contraseña.

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 5
Empresariales

Tener en cuenta que al ingresar la contraseña no aparecerán nada

Acceder a la interfaz de administración


Inicia el servidor de desarrollo con el siguiente comando:

python manage.py runserver

Luego, abre tu navegador y accede a http://localhost:8000/admin/. Inicia sesión con las


credenciales del superusuario que creaste.

Agregar datos
Dentro de la interfaz de administración, puedes agregar autores y entradas. Asegúrate de que
las entradas estén relacionadas con un autor existente.
¿Te aparece la aplicación blog? Menciona por que no aparece la aplicación blog

Quizás por que aun no esta registrada en algunos archivos dentro de la aplicación como en
settings.py

Registramos la aplicación en settings.py:

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 6
Empresariales

Asegúrate de que la aplicación "blog" esté registrada en el archivo settings.py de tu proyecto.


Abre proyecto_relacion_modelos/settings.py y asegúrate de que 'blog' esté incluido en la lista
de INSTALLED_APPS. Debería verse así:

INSTALLED_APPS = [
# ...
'blog',
# ...
]

Realiza nuevamente las migraciones:


Ejecuta los siguientes comandos para asegurarte de que las migraciones se hayan realizado
correctamente:

python manage.py makemigrations


python manage.py migrate

Agregamos datos

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 7
Empresariales

Paso 9: Crear una vista y una plantilla


Abre el archivo views.py en la aplicación "blog". Si no existe, créalo en la carpeta de la
aplicación "blog".

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 8
Empresariales

Define una vista que renderice las entradas del blog. Puedes utilizar vistas basadas en funciones
o vistas basadas en clases. Ejemplo de una vista basada en funciones:

from django.shortcuts import render


from .models import Entrada

def lista_entradas(request):
entradas = Entrada.objects.all()
return render(request, 'blog/lista_entradas.html', {'entradas': entradas})
En este ejemplo, estamos recuperando todas las entradas de la base de datos utilizando
Entrada.objects.all() y pasándolas a la plantilla llamada "lista_entradas.html".

Ahora, crea una plantilla HTML en la carpeta templates/blog dentro de la aplicación "blog" (si
esta carpeta no existe, créala). Llámala "lista_entradas.html". Puedes personalizar esta plantilla
según tus necesidades.

html
Copy code
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<title>Lista de Entradas</title>
</head>
<body>
<h1>Lista de Entradas</h1>
<ul>
{% for entrada in entradas %}
<li>
<h2>{{ entrada.titulo }}</h2>
<p>{{ entrada.contenido }}</p>
<p>Autor: {{ entrada.autor }}</p>
<p>Fecha de Publicación: {{ entrada.fecha_publicacion }}</p>

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 9
Empresariales

</li>
{% endfor %}
</ul>
</body>
</html>

Esta plantilla utiliza la sintaxis de plantilla de Django ({% ... %}) para mostrar los detalles de las
entradas.

Configura una URL para esta vista en el archivo urls.py de la aplicación "blog". Abre urls.py y
agrega el siguiente código:

from django.urls import path


from . import views

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

Esto configura una URL llamada "/entradas/" que mapea a la vista lista_entradas.

Asegúrate de que las URL de la aplicación "blog" se incluyan en las URL del proyecto principal
(proyecto_relacion_modelos/urls.py). Puedes hacerlo agregando una entrada en el archivo
urls.py del proyecto principal:

from django.contrib import admin


from django.urls import path, include

urlpatterns = [
path('admin/', admin.site.urls),
path('blog/', include('blog.urls')), # Agrega esta línea
]

Esto asegura que las URL de la aplicación "blog" se manejen correctamente.

Reinicia el servidor de desarrollo ejecutando python manage.py runserver si no está en


funcionamiento.

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 10
Empresariales

Ahora, puedes acceder a la lista de entradas en tu sitio web navegando a


http://localhost:8000/blog/entradas/. Deberías ver la lista de entradas que se muestra
utilizando la plantilla que creaste.

Agrega más autores y entradas y coloca una captura

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 11
Empresariales

TAREA
Crear una página que muestre todas las entradas de un autor específico cuando haces clic en su nombre
en la página de inicio. Para hacer esto, deberás agregar una vista y una URL adicional que filtre las
entradas por autor.

Mejora el diseño de la aplicación agregando algún estilo personalizado

Colocar capturas del código y capturas de ejecución

Grabar explicando el código y ejecución de este en máximo 4 minutos

DEPARTAMENTO DE TECNOLOGIA DIGITAL


Laboratorio de Desarrollo de Aplicaciones
Página | 12
Empresariales

OBSERVACIONES: (Las observaciones son las notas aclaratorias, objeciones y problemas que se
pudo presentar en el desarrollo del laboratorio)
 ______________________________________________________________________________
______________________________________________________________________________
 ______________________________________________________________________________
______________________________________________________________________________
 ______________________________________________________________________________
______________________________________________________________________________
 ______________________________________________________________________________
______________________________________________________________________________
 ______________________________________________________________________________
______________________________________________________________________________

CONCLUSIONES: (Las conclusiones son una opinión sobre tu trabajo, explicar cómo resolviste las
dudas o problemas presentados en el laboratorio. Además de aportar una opinión critica de lo
realizado)
 ______________________________________________________________________________
______________________________________________________________________________
 ______________________________________________________________________________
______________________________________________________________________________
 ______________________________________________________________________________
______________________________________________________________________________
 ______________________________________________________________________________
______________________________________________________________________________
 ______________________________________________________________________________
______________________________________________________________________________

DEPARTAMENTO DE TECNOLOGIA DIGITAL

También podría gustarte