2010-10-05 68 views
7

我:Django管理list_display反转(不是)一个布尔场

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,而不是漂亮的绿色和红色的图标。

如何让它再次显示图标?

回答

16

只需添加到您的方法 'not_locked' 属性布尔=真,

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