В моем конкретном случае у меня есть два вида «сообщений», которые мне нужно извлечь и разбить на страницы.
Давайте опустим детали и просто скажем, что первый тип находится в модели с именем Msg1, а другой называется Msg2
Поля этих двух моделей совершенно разные, единственными полями, общими для этих двух моделей, являются «дата» и «заголовок» (и, конечно, id).
Я могу получить Msg1.objects.all()
и Msg2.objects.all()
, но могу ли я объединить эти два запроса в один запрос, отсортировать его по дате и разбить на страницы?
Мне нужно сохранить ленивый характер запроса.
Тривиальным решением является list(query)
оба запроса и объединение их в список Python. но это неэффективно по понятным причинам.
Я просматривал ссылки на django на моделях и dp-api, но, похоже, нет способа объединить запросы разных моделей / таблиц в одну.