from django.db import models class Tag(models.Model): name = models.CharField(max_length=255) class Topic(models.Model): name = models.CharField(max_length=255) numbered = models.BooleanField(default=False) rootTopic = models.ForeignKey('self', blank=True, on_delete=models.CASCADE) class Blogpost(models.Model): created = models.DateTimeField(auto_now_add=True) last_modified = models.DateTimeField(auto_now=True) title = models.CharField(max_length=255) tags = models.ManyToManyField(Tag) topics = models.ForeignKey(Topic, blank=True, on_delete=models.CASCADE)