2010-10-05 7 views
7

Je:django inverse admin list_display (non) un champ booléen

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

Il affiche les belles icônes vertes et rouges pour le champ locked.

Ce que je veux, c'est afficher les valeurs inversées dans le champ locked.

J'ai donc écrit ceci:

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

Et cela fonctionne (les valeurs intervertit), mais il affiche laid True ou False au lieu des belles icônes vertes et rouges.

Comment faire pour afficher à nouveau les icônes?

Répondre

16

simplement ajouter à votre méthode 'not_locked' attribut booléen = True,

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