2011-10-14 6 views
10

J'essaie d'afficher du texte avec des retours à la ligne dans l'affichage de la liste du côté admin 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' 

Cependant, il est affiché sans nouvelles lignes comme TYPE : xxx RATE : yyy FAMILY zzz. Comment puis-je faire cela dans l'admin Django?

+1

L'administrateur Django est un site web. Comment afficher les sauts de ligne en HTML? –

Répondre

26

Vous devez utiliser br au lieu d'un \n, et préciser que ce champ est autorisé à utiliser des balises html:

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

Ou vous pouvez utiliser une certaine façon HTML plus élégante de formatage de votre sortie (comme l'emballage chaque dans un élément span avec une certaine classe, et ajoutez un peu de css pour faire ensuite de rendre les uns sous les autres).

Questions connexes