На моем сайте у меня есть три модели, организованные в двух приложениях. Все эти модели имеют поле timestamp
, которое определяет порядок появления в ленте сайта. Вместо создания канала для каждой модели и выполнения отдельных запросов, упорядоченных по полю timestamp
, я хочу создать один канал, содержащий все эти объекты, отображая каждый из них с соответствующим шаблоном, и все они упорядочиваются по * 1003. * атрибут.
Моей первой попыткой было бы перечислить все объекты и объединить их в один список и отсортировать их в Python:
class SiteFeed(Feed):
...
def items(self):
objects = list(model1.objects.all()) + list(model2.objects.all()) + list(model3.objects.all())
objects.sort(key=lamda obj: obj.timestamp)
return = objects