如何在 django 中按名称排序列表?

在这里,我尝试了这样的操作,但它没有给我正确的顺序。


class VAttribute(models.Model):

   attribute = models.ForeignKey(PAttribute, on_delete=models.CASCADE)

....


class PAttribute(models.Model):

    name = models.CharField(max_length=255, unique=True)


from operator import attrgetter

qs = VAttribute.objects.all()

ls = [obj.attribute for obj in qs]

#ls = [<PAttribute: name1>, <PAttribute: nam2>]


ordered_ls = sorted(ls, key=attrgetter('name'))


汪汪一只猫
浏览 78回答 1
1回答

慕少森

只需调用order_by()为qs_oder_by_name&nbsp;=&nbsp;VAttribute.objects.order_by("attribute__name")
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python