Python3 Django 后台列表 自定义修改单元格中字体颜色 图文教程

需求描述

在Django的后台实际开发过程中,我们直接建立模型后可以很快的生成一个列表。那么如何在后台list列表中自定义某个列的单元格中的字体颜色呢?效果如下图所示:

代码实例

admin.py 中自定义一个方法, statusColored

from scheduling import models
from django.utils.html import format_html

class ComputerRoomAdmin(admin.ModelAdmin):
    list_display = ('id', 'name','type','statusColored','weights')
    list_display_links = ('id','name')  
    ordering = ('-status','weights',)
    list_filter = ('type','status')
    def statusColored(self , obj):
        if obj.status == 0:
            return format_html('<span style="color:red">{}</span>','停用')
        else:
            return format_html('<span style="color:green">{}</span>','在用')
    statusColored.short_description = "状态"



admin.site.register(models.ComputerRoom , ComputerRoomAdmin)

models.py 模型中,我们的设置为 choices

    statusChoices = (
        (0,'停用'),
        (1,'在用')
    )
    status = models.IntegerField( choices=statusChoices,verbose_name='状态' , default=1 )

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注