Как создать список объектов из 2 моделей с сортировкой в Django?

У меня есть такая модель в Django:

Class SmallNews(models.Model):
date_news = modeles.DateField
...

Class BigNews(models.Model):
date_news = modeles.DateField
...

Я хочу создать список объектов(SmallNews + BigNews) и отсортировать все эти объекты по полю DateField. Как лучше всего это сделать?

Вы можете получить два набора запросов, а затем объединить их в один с помощью chain из itertools. Затем вы можете отсортировать новый список на основе поля date_news. Что-то вроде:

from itertools import chain

small_news = SmallNews.objects.all()
big_news = BigNews.objects.all()

combined_news = chain(small_news, big_news)

sorted_news = sorted(combined_news, key=lambda news: news.date_news)
Вернуться на верх