美化Jinja2模板

11

我有一个Jinja2模板,但无法与美化代码同时使用。 这个问题以前被问过,但是已经有将近两年没有答案了,也许现在有答案。

<select id="example-getting-started" name="test" multiple="multiple">
   {% for k in pizza_dict %}
      <option value="{{ k }}" {% if pizza_dict[k] %}selected{% endif %}>{{ k }}</option>
   {% endfor %}
</select>

BeautifulSoup和lxml将会把这段代码“美化”为:

<select id="example-getting-started" multiple="multiple" name="test"> 
{% for k in pizza_dict %} 
    <option endif="" if="" pizza_dict="" value="{{ k }}"> {{ k }} </option> 
{% endfor %} </select>

这将破坏代码的功能。


1
Jinja模板不是XML,所以我不会期望XML美化器能够工作。 - tdelaney
你可以尝试使用BeautifulSoup。请参考这个答案。同时阅读这个主题。 - doru
@doru,我在我的问题中已经证明了beautifulsoup和lxml都不起作用。 - Michael K
2
此处所提到的,我在开发Flask/Jinja2应用程序时使用atom-beautify包配合Atom文本编辑器。格式化的模板看起来非常整洁。 - Nimrod
@Nimrod 谢谢,这是一个很棒的解决方案。 - Michael K
2个回答

3

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接