来自django教程was_published_recently.admin_order_field ='pub_date'

时间:2013-09-06 14:26:22

标签: python django

来自the django tutorial

 was_published_recently.admin_order_field = 'pub_date'

这句话到底在做什么?

1 个答案:

答案 0 :(得分:10)

这是参考django的admin部分。

在与模型对应的管理部分中,每个模型都有一个名为list_display的属性,该属性控制管理员的更改列表(所有对象的列表显示)页面上显示的字段。

现在,如果您希望更改was_published_recentlylist_display的默认排序顺序,可以设置admin_order_field属性。

所以,在例子中:

class Poll(models.Model):
    # ...
    def was_published_recently(self):
        return self.pub_date >= timezone.now() - datetime.timedelta(days=1)
    was_published_recently.admin_order_field = 'pub_date'
    was_published_recently.boolean = True
    was_published_recently.short_description = 'Published recently?'

您正在添加名为was_published_recently的自定义列,并在单击列pub_date的“排序”选项时将排序顺序指定为数据库字段was_published_recently

通过向下滚动到与this link

中的admin_order_field相关的信息,您可以更好地理解这一点