我有两个型号,Quote和Post。 我想要两个发送到我的模板:
posts = Post.objects.order_by("-submitted_time")
quotes = Quote.objects.order_by("-submitted_time")
thing = posts + quotes
但是两个QuerySet中的一些不支持。如何将帖子和报价发送到模板?
假设我在数据库中有两个Post和两个Quote:
post 1 submitted_time:2010/2/12
post 2 submitted_time:2010/2/8
quote 1 submitted_time:2010/2/9
quote 2 submitted_time:2010/2/13
我想发送一个像[quote2, post1, quote1, post2]
答案 0 :(得分:2)
你可以这样做:
from itertools import chain
thing = list(chain(posts, quotes))
按照您想要的方式订购:
import operator
from itertools import chain
thing = list(chain(posts, quotes))
thing = sorted(thing, key=operator.attrgetter('submitted_time', reverse=True)
或者
thing = sorted(thing, key=operator.attrgetter('submitted_time')
取决于你想要的