1. """
    
  2. Testing signals before/after saving and deleting.
    
  3. """
    
  4. from django.db import models
    
  5. 
    
  6. 
    
  7. class Person(models.Model):
    
  8.     first_name = models.CharField(max_length=20)
    
  9.     last_name = models.CharField(max_length=20)
    
  10. 
    
  11.     def __str__(self):
    
  12.         return "%s %s" % (self.first_name, self.last_name)
    
  13. 
    
  14. 
    
  15. class Car(models.Model):
    
  16.     make = models.CharField(max_length=20)
    
  17.     model = models.CharField(max_length=20)
    
  18. 
    
  19. 
    
  20. class Author(models.Model):
    
  21.     name = models.CharField(max_length=20)
    
  22. 
    
  23.     def __str__(self):
    
  24.         return self.name
    
  25. 
    
  26. 
    
  27. class Book(models.Model):
    
  28.     name = models.CharField(max_length=20)
    
  29.     authors = models.ManyToManyField(Author)
    
  30. 
    
  31.     def __str__(self):
    
  32.         return self.name
    
  33. 
    
  34. 
    
  35. class Page(models.Model):
    
  36.     book = models.ForeignKey(Book, on_delete=models.CASCADE)
    
  37.     text = models.TextField()