models.py 965 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. from django.db import models
  2. class School(models.Model):
  3. name = models.CharField(max_length=100)
  4. class Parent(models.Model):
  5. name = models.CharField(max_length=100)
  6. class Child(models.Model):
  7. mother = models.ForeignKey(Parent, models.CASCADE, related_name="mothers_children")
  8. father = models.ForeignKey(Parent, models.CASCADE, related_name="fathers_children")
  9. school = models.ForeignKey(School, models.CASCADE)
  10. name = models.CharField(max_length=100)
  11. class Meta:
  12. constraints = [
  13. models.UniqueConstraint("mother", "father", name="unique_parents"),
  14. ]
  15. class Poet(models.Model):
  16. name = models.CharField(max_length=100)
  17. def __str__(self):
  18. return self.name
  19. class Poem(models.Model):
  20. poet = models.ForeignKey(Poet, models.CASCADE)
  21. name = models.CharField(max_length=100)
  22. class Meta:
  23. unique_together = ("poet", "name")
  24. def __str__(self):
  25. return self.name