我正在使用django和python。在模板文件中,我有一个下拉列表,如下所示。有用。唯一的问题是源html代码之间有很多空格。有没有办法删除空白区域?感谢。
{% for lang_ele in video.languages.all %}
{% ifequal lang_ele.lang display_language %}
{% for key, value in language_table.items %}
{% ifequal lang_ele.lang key%}
<option selected = "selected" value={{lang_ele.lang}}>{{value}}</option>
{% endifequal %}
{% endfor %}
{% else %}
{% for key, value in language_table.items %}
{% ifequal lang_ele.lang key%}
<option value={{lang_ele.lang}}>{{value}}</option>
{% endifequal %}
{% endfor %}
{% endifequal %}
{% endfor %}
输出html源代码如下所示:
<option value=de>German</option>
<option value=el>Greek</option>
<option value=hi>Hindi</option>
答案 0 :(得分:48)
您可以使用spaceless
模板标记。它:
删除 HTML标记之间的空白。
{% spaceless %}
<p>
<a href="foo/">Foo</a>
</p>
{% endspaceless %}
答案 1 :(得分:3)
看看middelware,例如“htmlmin”。它一次处理文件。此外,它有一个装饰。 https://crate.io/packages/django-htmlmin
gzip会产生同样的效果。选择退出修剪可能需要花费。 看看django middelware或nginx gzip。
您在模板中使用控制器/模型逻辑。这是错误的方式。
答案 2 :(得分:1)
我使用自定义辅助函数进行剥离。这是我使用的一个例子:http://justcramer.com/2008/12/01/spaceless-html-in-django/