使用对一组QuerySet进行排序

问题描述 投票:0回答:1

我有此页面模型:

class BlogPostPage(Page):
    date_published= models.DateField('Published date', blank=True, null=True)
    intro= models.CharField(max_length=250)
    body = RichTextField(blank=True)
    header_image = models.ForeignKey('wagtailimages.Image', blank=True, null=True,
    on_delete=models.SET_NULL, related_name='+')
    tags = ClusterTaggableManager(through='blog.BlogPageTag', blank=True)
    categories = ParentalManyToManyField('blog.BlogCategory', blank=True)

def get_context(self, request):
        context = super().get_context(request)
        all_categories = []
        for post in self.get_siblings(inclusive=True):
            all_categories +=post.specific.categories.all()
        all_categories = sorted(set(all_categories))

        context['all_categories']= all_categories
        return context

访问页面时,我收到TypeError:

/ blog / xxx /处的TypeError

'

要求提供有关发生原因以及如何避免的信息。

django-models django-queryset wagtail
1个回答
0
投票

您可以根据keysorted定义key functions参数。

但是我不确定,+中是否允许使用all_categories +=post.specific.categories.all()

© www.soinside.com 2019 - 2024. All rights reserved.