python 使用jinjia2 生成文件的空格处理

例如:

 <div>
{% if True %}
yay
{% endif %}
</div> 生成文件为 <div> yay </div>

两种方法解决:

1、如果应用程序将Jinja配置为trim_blocks,则会自动删除模板标记之后的第一个换行符(如PHP中)。该lstrip_blocks 选项也可以设定为从线到一个块的开始的开始剥离制表符和空格。(如果在块开始之前还有其他字符,则不会剥离任何内容。)

与这两个trim_blockslstrip_blocks启用,你可以把自己的行块标记,当渲染,保持内容的空白整个区块线将被删除。

2、手动剥离模板中的空白。如果将减号(-)添加到块的开头或结尾(例如For标签),注释或变量表达式,则将删除该块之前或之后的空格。

 {% for item in seq -%}
{{ item }}
{%- endfor %}

如果启用了行语句,它们会自动删除前导空格直到行的开头。

默认情况下,Jinja2还会删除尾随换行符。要保留单个尾随换行符,请将 Jinja配置为keep_trailing_newline

上一篇:Ubuntu安装Mysql及使用


下一篇:关于resin的illegal utf8 encoding at (190)解决方式