Skip to content

Instantly share code, notes, and snippets.

@melizeche
Last active May 9, 2020 22:31
Show Gist options
  • Save melizeche/ddf09b88ac7b7223c98031ebc6d94cf0 to your computer and use it in GitHub Desktop.
Save melizeche/ddf09b88ac7b7223c98031ebc6d94cf0 to your computer and use it in GitHub Desktop.
Django models con relaciones entre tablas
from django.db import models
# Un Autor puede tener varios libros
# Un libro puede tener un autor
# Un Libro puede tener varios Generos
# Un Genero puede pertenecer a varios libros
# null=True, blank=True hace que el campo sea opcional
class Autor(models.Model):
nombre = models.CharField(max_length=120)
nacionalidad = models.CharField(max_length=120, null=True, blank=True)
def __str__(self):
return self.nombre
class Libro(models.Model):
nombre = models.CharField(max_length=120)
sinopsis = models.TextField(null=True, blank=True)
#ForeignKey('NombreDeLaTabla') relaciona un autor a un libro
autor = models.ForeignKey('Autor', on_delete=models.SET_NULL, null=True, blank=True)
#ManyToManyField('NombreDeLaTabla') relaciona un libro con uno o mas generos
generos = models.ManyToManyField('Genero')
def __str__(self):
return self.nombre
class Genero(models.Model):
nombre_genero = models.CharField(max_length=50)
def __str__(self):
return self.nombre_genero
Copy link

ghost commented May 9, 2020

No entiendo nada. Creo que es mas practico y breve y MAS CLARO, haber dejado la sintaxis de la instrucción (select o queryset) donde se relacionan estas tablas, y esos numeritos son del terror, at 0x7fa16821b438 es chino

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment