list_display - logiczne ikony metod


123

Podczas definiowania tablicy list_display dla ModelAdminklasy, jeśli podano BooleanFieldlub, NullBooleanFieldinterfejs użytkownika użyje ładnie wyglądających ikon zamiast tekstu Prawda / Fałsz w kolumnie. Jeśli jednak podano metodę, która zwraca wartość logiczną, po prostu wypisuje True / False.

Czy istnieje sposób, aby użyć ładnych ikon dla metody boolowskiej?

Odpowiedzi:


234

Jest to udokumentowane, choć jest to trochę trudne do znalezienia - przejść kilka ekranów w dół od tutaj , a znajdziesz to:

Jeśli podany łańcuch jest metodą modelu, ModelAdmin lub obiekt wywoływany, który zwraca True lub False, Django wyświetli ładną ikonę „on” lub „off”, jeśli nadasz metodzie booleanatrybut o wartości True.

a podany przykład to:

def born_in_fifties(self):
    return self.birthday.strftime('%Y')[:3] == '195'
born_in_fifties.boolean = True

13
Masz jakiś pomysł, jak to zrobić, gdy używasz dekoratora @property ?: „AttributeError: 'property' obiekt nie ma atrybutu 'boolean'”
Kye Russell


jest to bardzo pomocne
minhajul

Piękny! To właśnie sprawia, że ​​kocham Python + Django.
Nitin Nain
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.