Python 3.x Jinja模板空白问题
我正在使用XMLJinja模板创建动态xml文件。 所以当在jinja模板中使用循环时,如下所示Python 3.x Jinja模板空白问题,python-3.x,templates,jinja2,Python 3.x,Templates,Jinja2,我正在使用XMLJinja模板创建动态xml文件。 所以当在jinja模板中使用循环时,如下所示 <tag1> <tag2 name="NAME1"> {% if required.data.present -%} <tag3 data = required.data.present.value /> {% endif -%} </ta
<tag1>
<tag2 name="NAME1">
{% if required.data.present -%}
<tag3 data = required.data.present.value />
{% endif -%}
</tag2>
</tag1>
{%如果需要。data.present-%}
{%endif-%}
Iam期望输出为:
<tag1>
<tag2 name="NAME1">
<tag3 data = required_data />
</tag2>
</tag1>
但原始输出是:
<tag1>
<tag2 name="NAME1">
<tag3 data = required_data />
</tag2>
</tag1>
这里的问题是什么?之所以发生这种情况,是因为您在
endif
上的减号删除了右侧的空格和新行:{%endif-%}
您可以使用正确的标识来删除左{%-endif%}
的空格:
{%如果需要。data.present-%}
{%-endif%}
显示:
发生这种情况是因为您在
尾端加上的减号将删除右侧的空格和新行:{%endif-%}
您可以使用正确的标识来删除左{%-endif%}
的空格:
{%如果需要。data.present-%}
{%-endif%}
显示:
是的。我按照你的建议试过了。只有在endif:{%-endif-%}
的两侧加一个负号时,才能在的同一行中打印,而不是在下一行中对齐。您想要的正是答案中的内容:{%-endif%}
是的。我按照你的建议试过了。只有在endif:{%-endif-%}
的两侧加一个负号时,才能在的同一行中打印,而不是在下一行中对齐。您想要的正是答案中的内容:{%-endif%}