Может быть django-polymorphic подойдёт:
https://django-polymorphic.readthedocs.io/en/stabl...
При многотабличном наследовании, Django ORM по-умолчанию позволяет получать все записи родительской и дочерних моделей только как объекты класса родительской модели.
Библиотека django-polymorphic позволяет, делая запрос объектов родительской модели, получать объекты разных классов (как родительской, так и дочерних моделей).
Плюс там реализованы классы, позволяющие адаптировать админку Django к удобной работе с полиморфными данными.
Например, иметь в админке единый подраздел для родительской и дочерних моделей с фильтром записей по типу, при создании проходить через промежуточную страницу с выбором типа, а так же скажем выбирать тип при создании записей в инлайн-полях. Причём, всё достаточно опционально.