Django order_by子句

时间:2014-03-14 06:29:13

标签: python django django-queryset

我是django和python的新手,但我开始掌握一些事情。我认为。 我有这个问题,我似乎无法找到答案。我的问题出在django queryset order_by clause

pp=Loksabha.objects.filter(state_name='MAHARASHTRA',constituency_name='Kolhapur').order_by('lok_sabha')

pp结果

Fifteenth Lok Sabha(2009-14)
Eleventh Lok Sabha(1996-98)
Fourteenth Lok Sabha(2004-09)
Tenth Lok Sabha(1991-96)
Thirteenth Lok Sabha(1999-04)
Sixth Lok Sabha(1977-79)
Ninth Lok Sabha(1989-91)
Seventh Lok Sabha(1980-84)
Fifth Lok Sabha(1971-77)
Fourth Lok Sabha(1967-71)
Second Lok Sabha(1957-62)
Twelfth Lok Sabha(1998-99)

但我希望得到这样的结果

Fifteenth Lok Sabha(2009-14)
Fourteenth Lok Sabha(2004-09)
Thirteenth Lok Sabha(1999-04)
Twelfth Lok Sabha(1998-99)
Eleventh Lok Sabha(1996-98)
Tenth Lok Sabha(1991-96)
Ninth Lok Sabha(1989-91)
Sixth Lok Sabha(1977-79)
Fifth Lok Sabha(1971-77)
Fourth Lok Sabha(1967-71)
Second Lok Sabha(1957-62)

我的模特是:

class Loksabha(models.Model):
    lok_sabha = models.CharField(max_length=255)
    member_name =  models.CharField(max_length=255)
    gender = models.CharField(max_length=10)
    constituency_name = models.CharField(max_length=255)
    party_name = models.CharField(max_length=255)
    state_name = models.CharField(max_length=255)

请给我适当的解决方案。

1 个答案:

答案 0 :(得分:1)

您的查询集的结果应该按照您在此处编写的代码的字母顺序由属性lok_sabbah排序。同时,我不知道你在打印时使用了什么?你的模特。

您是否可以复制/粘贴 str 方法以确保打印结果?

也许,如果名字遵循他们创作的顺序,你只需要order_by(pk) ......