from django.db import models class Book(models.Model): title = models.CharField(max_length=50) author = models.CharField(max_length=50) pages = models.IntegerField(db_column="page_count") shortcut = models.CharField(max_length=50, db_tablespace="idx_tbls") isbn = models.CharField(max_length=50, db_tablespace="idx_tbls") barcode = models.CharField(max_length=31) class Meta: indexes = [ models.Index(fields=["title"]), models.Index(fields=["isbn", "id"]), models.Index( fields=["barcode"], name="%(app_label)s_%(class)s_barcode_idx" ), ] class AbstractModel(models.Model): name = models.CharField(max_length=50) shortcut = models.CharField(max_length=3) class Meta: abstract = True indexes = [ models.Index(fields=["name"]), models.Index(fields=["shortcut"], name="%(app_label)s_%(class)s_idx"), ] class ChildModel1(AbstractModel): pass class ChildModel2(AbstractModel): pass