2011-10-14 23 views
10

Intento mostrar el texto con nuevas líneas en la lista del lado de administrador de Django.Django admin list_display newline

class MyModelAdmin(admin.ModelAdmin): 
    list_display = ('example') 

def example(self,obj): 
    return 'TYPE : %s \n RATE : %s \n FAMILY %s' 

Sin embargo, se muestra sin saltos de línea como TYPE : xxx RATE : yyy FAMILY zzz.

¿Cómo puedo hacer esto en Django admin?

+1

El administrador de Django es un sitio web. ¿Cómo se muestran los saltos de línea en HTML? –

Respuesta

26

Usted tiene que usar ancho en lugar de una \n, y especificar que se permite este campo para utilizar etiquetas HTML:

def example(self): 
    return 'TYPE : %s<br>RATE : %s<br>FAMILY %s' % (self.type, 
                self.rate, 
                self.family) 
example.allow_tags = True 

O puede usar un poco más elegante manera HTML de formato de su salida (como envolver cada uno en un elemento span con una cierta clase, y agrega algo de css para hacer luego render debajo uno del otro).