我过滤了多个模型,并将它们链接在一起,并根据它们的属性对它们进行排序。在
bs = Book.objects.filter(books__person=person).order_by('-release_date')
jn = Journal.objects.filter(journals__person=person).order_by('-year')
joined = itertools.chain(x for x in (bs, jn))
sorter = lambda x: x.release_date if hasattr(x,'release_date') else x.year
sorted_medien = sorted(joined, key = sorter, reverse=True)
但它的意思是:'QuerySet' object has no attribute 'year'
。这是合理的,因为我传递的是查询集而不是对象到排序器函数。在
我怎样才能更深入地将分类器应用到每个对象?在
你在做类似的事情:
你要做的是:
^{pr2}$因此,您需要更改
joined = itertools.chain ...
行,如下所示:相关问题 更多 >
编程相关推荐