Django管理界面list_display如何将布尔字段反转(非)?

7

我有:

class MyModelAdmin(admin.ModelAdmin):
    list_display = ('name', 'locked', )

它显示了locked字段的漂亮绿色和红色图标。

我想要的是在locked字段中显示反转值。

所以我写了这个:

def not_locked(obj):
    return not obj.locked
class MyModelAdmin(admin.ModelAdmin):
    list_display = ('name', not_locked,)

这样做可以实现(反转值),但显示的是丑陋的TrueFalse,而不是漂亮的绿色和红色图标。

如何使其再次显示图标?

1个回答

18

只需在你的方法中添加'not_locked'属性,将其布尔值设置为True即可。

def not_locked(self, obj):
    return not obj.locked
not_locked.boolean = True

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接