user2239318
user2239318

Reputation: 2784

django admin list_display textfield

I've a Textfield defined in model.py

In the changelist data are shown as single line instead

in the change view of the object, the data are rendered in a:

vLargeTextField

the break lines are mantained as in the user input.

es.

hi,

nice to meet you,

I need a break

Is there something special to allow the list_display to show the data as in the change view?

Upvotes: 0

Views: 893

Answers (1)

Ian Price
Ian Price

Reputation: 7616

You can render breaks as html (the linebreaks templatetag make it easy, or surround with the html pre tag i.e. <pre>... (your_text) ...</pre>) and set the allow_tags property to True for this field within your admin class definition.

admin.py

class CustomAdmin(admin.ModelAdmin):
    model = YourModel
    list_display = ['your_large_text_field__custom_rendering']

    def your_large_text_field__custom_rendering(self, obj):
        return "<pre>%s</pre>" % (obj.your_large_text_field,)
    your_large_text_field__custom_rendering.allow_tags = True


admin.site.register(YourModel, CustomAdmin)

Upvotes: 4

Related Questions