Я использовал что-то вроде этого:
objects = list(queryset1)+list(queryset2)
objects = sorted(objects, key=lambda x: x.date, reverse=True)
Теперь для моделей я определил новый метод:
def gettype(self):
return self._meta.verbose_name
, который в основном дает вам название модели.
Теперь в шаблоне вы можете различать объекты следующим образом:
{% for object in objects %}
{% if object.gettype == "mediaitem" %}
{{ object.some_attribute }}
{% endif %}
{% endfor %}