list_display: iconos booleanos para métodos


122

Al definir la matriz list_display para una ModelAdminclase, si se proporciona una BooleanFieldo NullBooleanFieldla UI usará iconos atractivos en lugar de texto verdadero / falso en la columna. Sin embargo, si se proporciona un método que devuelve un valor booleano, simplemente imprime Verdadero / Falso.

¿Hay alguna manera de hacer que use los bonitos iconos para un método booleano?

Respuestas:


232

Esto está documentado, aunque es un poco difícil de encontrar: baje un par de pantallas desde aquí y encontrará esto:

Si la cadena dada es un método del modelo, ModelAdmin o un invocable que devuelve True o False Django mostrará un bonito icono de "encendido" o "apagado" si le da al método un booleanatributo cuyo valor es True.

y el ejemplo dado es:

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

13
¿Alguna idea de cómo hacerlo cuando usa el decorador @property ?: "AttributeError: el objeto 'propiedad' no tiene atributo 'booleano'"
Kye Russell


esto es muy útil
minhajul

¡Hermoso! Esto es lo que me hace amar a Python + Django.
Nitin Nain
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.