当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Django display用法及代码示例


本文介绍 django.contrib.admin.display 的用法。

声明

display(*, boolean=None, ordering=None, description=None, empty_value=None)
Django 3.2 中的新函数。

此装饰器可用于设置自定义显示函数的特定属性,可与 list_display readonly_fields 一起使用:

@admin.display(
    boolean=True,
    ordering='-publish_date',
    description='Is Published?',
)
def is_published(self, obj):
    return obj.publish_date is not None

这相当于直接在函数上设置一些属性(使用原始的、更长的名称):

def is_published(self, obj):
    return obj.publish_date is not None
is_published.boolean = True
is_published.admin_order_field = '-publish_date'
is_published.short_description = 'Is Published?'

另请注意,empty_value 装饰器参数映射到直接分配给函数的empty_value_display 属性。它不能与boolean 一起使用——它们是互斥的。

使用这个装饰器不是必须的来创建一个显示函数,但是在你的源代码中使用它而不带参数作为一个标记来识别函数的目的是很有用的:

@admin.display
def published_year(self, obj):
    return obj.publish_date.year

在这种情况下,它不会向函数添加任何属性。

相关用法


注:本文由纯净天空筛选整理自djangoproject.com大神的英文原创作品 django.contrib.admin.display。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。