Skip to content

Latest commit

 

History

History
51 lines (38 loc) · 2 KB

File metadata and controls

51 lines (38 loc) · 2 KB

Fullstack con Python > Backend con Python > Sesión 09 > Reto-02

Creando relaciones muchos a muchos con el modelo de datos de Django.

OBJETIVO

  • Crear una relación muchos a muchos entre dos tablas.

REQUISITOS

  1. Actualizar repositorio

  2. Usar la carpeta de trabajo Clase-09/Reto-02

  3. Diagrama del modelo entidad-relación para el proyect Biblioteca

    Modelo entidad-relación para Biblioteca

  4. Documentación de Django referente a modelos:

DESARROLLO

  1. Usando el modelo entidad-relación, modificar la tabla Prestamo para agregar la relación muchos a muchos con la tabla Libro:

    TIP: Revisar el tipo de dato ManyToManyField()__ https://docs.djangoproject.com/en/2.2/ref/models/fields/#manytomanyfield

    class Prestamo(models.Model):
        """ Define la tabla Prestamo """
        usuario = models.ForeignKey(Usuario, on_delete=models.CASCADE)
        fechaPre = models.DateField(auto_now_add=True)
        fechaDev = models.DateField(null=True, blank=True)
        ???
    
        def __str__(self):
            """ Se define la representación en str para Prestamo """
            return str(self.id)

    Avisando a Django que hemos modificado el archivo models.py:

    (Biblioteca) Reto-02/Biblioteca $ python manage.py makemigrations
    (Biblioteca) Reto-02/Biblioteca $ python manage.py migrate
    (Biblioteca) Reto-02/Biblioteca $

    Al modificar un préstamos en el administrador de Django se verá algo similar a lo siguiente:

    Django admin muchos a muchos

    Donde se puede asignar uno, dos o más libros a este préstamo.