There are three possible inheritance styles in Django, and they are:
Proxy models: This style is mainly used for those who want to modify the Python level behaviour of the model, without modifying the model’s fields.
Abstract Base Classes: This inheritance style is used only when we want to make parent class hold the data which they don’t want to repeat it again in the child class.
Multi-table Inheritance: This inheritance style is used only when we want to subclass an existing model and there must a database table designed for each model on its own.