Django admin список отображения новой строки

Я пытаюсь отобразить текст с новыми строками в списке отображения административной стороны Django.

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

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

однако он отображается без новых строк, таких как TYPE : xxx RATE : yyy FAMILY zzz.

Как я могу это сделать в Django admin ?

1 ответов


вы должны использовать br вместо \n и укажите, что в этом поле разрешено использовать HTML-теги:

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

или вы можете использовать более элегантный HTML-способ форматирования вывода (например, обертывание каждого элемента span с определенным классом и добавление css, чтобы сделать затем визуализацию ниже друг друга).