Django templates: how to avoid empty lines with include and load?

橙三吉。 提交于 2019-12-12 07:53:58

问题


In a template, I use the following code:

{% load i18n %}
{% include "header.html" %}
{% include "top_bar.html" %}

But this produces several carriage returns (\n) as I separate every include and load by a carriage return. I don't want to concatenate inclusions like this:

{% include "header.html" %}{% include "top_bar.html" %}

Because it's unreadable.

Is there a way to avoid these generated new lines ?


回答1:


Well after some researches, I found this thread where a patch is submitted and currently being reviewed. This validation step takes too much time regarding my project.

Here is a django module I created to do that. It handles whitespaced/blank lines/empty lines just as Gary Wilson asked in the thread above.

It consists in a template loader and a middleware:

  • The template loader tags the requested blank lines (those voluntary inserted by the developer)
  • The middleware intercepts the HttpResponse and suppresses every blank line. Then, it untags the previously-requested lines and returns the cleared response



回答2:


Check this snippet: http://djangosnippets.org/snippets/569/. You can also convert it to middleware to avoid additional tags in your templates.



来源:https://stackoverflow.com/questions/10971553/django-templates-how-to-avoid-empty-lines-with-include-and-load

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!