动态添加类到Django管理中特定字段的标签标记

2024-06-01 19:28:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这个模型。我正在尝试使“信息”字段的标签标签更改背景颜色,如果批准=真。 这里是我的模型和管理文件

在模型.py在

class MyModel(models.Model):
    name = models.CharField(max_length=100, unique=True)
    info = models.TextField(null=True, blank=True)
    approved = models.BooleanField(default=False)

在管理员py在

^{pr2}$

Tags: namepy模型信息truemodel颜色models
1条回答
网友
1楼 · 发布于 2024-06-01 19:28:03

试试这个:

class MyModelAdmin(admin.ModelAdmin):
    form = MyModelAdminForm
    list_display = ('name', 'info_colored', 'approved',)
    readonly_fields = ('info_colored',)

    fieldsets = (
        (None, {
            'fields': ('name', 'info', 'info_colored',)
        }),

    )

    def info_colored(self, obj):
        color = 'red'
        if obj.approved:
            color = 'green'
        return u'<b style="background:{};">{}</b>'.format(color, obj.info)
    info_colored.allow_tags = True
    info_colored.admin_order_field = 'info'

相关问题 更多 >