- November 29, 2010
- formatting syntax html readability output indentation format tidy templates prettify
- 4 (after 4 ratings)
This is an enhancement of snippet #172. Here I use BeautifulSoup — far more easier to install through pip in a virtualenv, and possibly a bit more maintained — to format and properly indent the rendered HTML from templates.
I also added a check to only tidy contents in a
DEBUG=True environment, regarding high impact on performance while doing so in production.
Last, it's compatible with Django 1.2.x.
1 2 3 4 5 6 7 8 9 10 11
import settings from BeautifulSoup import BeautifulSoup class PrettifyMiddleware(object): """HTML code prettification middleware.""" def process_response(self, request, response): if settings.DEBUG and response['Content-Type'].split(';', 1) == 'text/html': response.content = BeautifulSoup(response.content).prettify() return response
More like this
- HTML Prettifier by Eloff 7 years, 8 months ago
- prettify html by marchino 8 years, 6 months ago
- Prettify HTML5 middleware by runejuhl 4 years, 3 months ago
- Revisiting Pygments and Markdown by djypsy 8 years, 2 months ago
- Sanitize text field HTML (here from the Dojo Toolkit Editor2 widget) by akaihola 8 years, 6 months ago