1. from django.db import models
    
  2. 
    
  3. 
    
  4. class Article(models.Model):
    
  5.     title = models.CharField(max_length=100)
    
  6.     pub_date = models.DateTimeField()
    
  7.     published_on = models.DateField(null=True)
    
  8. 
    
  9.     categories = models.ManyToManyField("Category", related_name="articles")
    
  10. 
    
  11.     def __str__(self):
    
  12.         return self.title
    
  13. 
    
  14. 
    
  15. class Comment(models.Model):
    
  16.     article = models.ForeignKey(Article, models.CASCADE, related_name="comments")
    
  17.     text = models.TextField()
    
  18.     pub_date = models.DateTimeField()
    
  19.     approval_date = models.DateTimeField(null=True)
    
  20. 
    
  21.     def __str__(self):
    
  22.         return "Comment to %s (%s)" % (self.article.title, self.pub_date)
    
  23. 
    
  24. 
    
  25. class Category(models.Model):
    
  26.     name = models.CharField(max_length=255)