django modeladmin字段语法简化器。
django-admin-field的Python项目详细描述
django modeladmin字段语法简化器。
的常见django管理字段自定义语法如下所示。
class FileAdmin(ModelAdmin) list_display = ('name', 'human_size') def human_size(self, obj): return filesizeformat(obj.size) human_size.short_description = 'size' human_size.admin_order_field = 'size'
这个库允许对它进行分类并使其可重用。
class FileAdmin(ModelAdmin) list_display = ('name', 'human_size') human_size = AdminField('size', filesizeformat)
继承
您可以创建一些可重用字段,以供多用途使用。
class AdminSizeField(AdminFieldBase): DEFAULT_FIELD = 'size' method = staticmethod(human_size) class FileAdmin(ModelAdmin) list_display = ('name', 'human_size') human_size = AdminSizeField()
属性
默认情况下,将从 字段名。但你可以用夸尔格来掩盖它。
class FileAdmin(ModelAdmin) list_display = ('name', 'human_size') human_size = AdminField('size', filesizeformat, short_description='real size', allow_tags=True)
外键
默认情况下,modeladmin不允许您在列表显示中使用外键。 请随意使用adminfield。它将有一个描述 以及排序字段。
class UserFileAdmin(ModelAdmin) list_display = ('name', 'file__size') file__size = AdminField('file__size', filesizeformat)
别忘了选择相关型号。
class UserFileAdmin(ModelAdmin) select_related = ['file'] list_display = ('name', 'file__size') file__size = AdminField('file__size', filesizeformat) def queryset(self, request): return super(AdminModelSelectRelated, self).queryset(request).select_related(*self.select_related)