2010-11-30 4 views
0

Как я могу использовать интерфейс querySet для двух и более моделей?
, например:multiple queryset

assortments = get_list_or_404(Assortment, [some_list]) #this is content_types of each models 
category = [ assortment.type.model_class() for assortment in assortments ] 
all_goods = map(lambda cl: cl.objects.filter(has_shop=True, **kwargs).distinct(), category) 
all_goods = reduce(lambda l,l1: l.extend(l1) or l, all_goods, []) 

, но теперь я не могу использовать методы querysets, как order_by, например
как еще я могу получить список объектов из разных моделей?

+0

ok. и каков наилучший способ отсортировать мой список по ценам, например? – JIoJIaJIu 2010-11-30 13:51:21

ответ

1

Вы не можете. Набор запросов - упорядоченная коллекция экземпляров одного типа модели. Нет такой вещи, как набор запросов нескольких моделей.

+0

+1, и это очень тесно связано с концепцией «Модель»! http://code.djangoproject.com/browser/django/trunk/django/db/models/query.py#L31 Нельзя даже вручную создать свой собственный общий «QuerySet», чтобы справиться с этим, если вы не свалите его на один общий модель. – 2010-11-30 22:56:56

Смежные вопросы