Django管理排序顺序

时间:2010-12-31 19:21:22

标签: django django-models

我已经完成了http://docs.djangoproject.com上的民意调查教程。

我想知道是否可以在“选择”中添加排序顺序。编辑民意调查时的模型以及如何完成

感谢

5 个答案:

答案 0 :(得分:96)

class SeminarInline(admin.StackedInline):
    model = Seminar
    extra = 0
    ordering = ('-date',)

为我工作(以上改编自我的模特) 它按降序日期顺序排序

答案 1 :(得分:15)

您可以将Meta选项添加到Django模型中,该模型可以指示它的行为方式。有一个ordering选项,用于定义应该对哪个模型属性记录进行排序。

您可以找到元排序选项here in the Django docs的文档:

答案 2 :(得分:12)

还可以覆盖get_ordering(self, request)的{​​{1}},允许不区分大小写的排序:

ModelAdmin

答案 3 :(得分:7)

如果您想在InlineAdmin中定义订单,django不会为您提供通用的解决方案!有some snippets out there可以让您将此功能添加到管理员,grappelli skin也为您提供了这样的功能!

答案 4 :(得分:0)

例如,如果您希望表格按百分比排序:

  1. 转到mainapp中的models.py文件
  2. class Meta:
     abstract = True
     ordering = ['-percentage'] #Sort in desc order
    
  3. class Meta:
     abstract = True
     ordering = ['percentage'] #Sort in asc order