Как создать список объектов из 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)