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.