我使用curl
來觀看我的web應用程序的輸出。當Flask和Jinja渲染模板時,輸出中會有很多不必要的空白。它似乎是通過從Flask-WTF和Flask-Bootstrap渲染各種組件來添加的。我可以用sed
去掉這個,但是有沒有辦法從Jinja控制這個?從Jinja呈現模板中刪除不必要的空格
回答
金嘉有多種方式可以control whitespace。它不有一種方法來美化輸出,你必須手動確保一切看起來「很好」。
最廣泛的解決方案是在env上設置trim_blocks
和lstrip_blocks
。
app.jinja_env.trim_blocks = True
app.jinja_env.lstrip_blocks = True
如果要在文件末尾保留一個換行符,請設置strip_trailing_newlines = False
。
您可以使用控制字符來修改塊周圍空白的工作方式。 -
總是刪除空格,+
始終保留它,覆蓋該塊的env設置。角色可以在塊的開始或結束(或兩個)處去控制該方向上的空白。
{%- if ... %} strips before
{% if ... +%} preserves after
{%+ if ... -%} preserves before and strips after
remember that `{% endif %}` is treated separately
注意,控制字符僅適用於模板你寫。如果您包含模板或使用來自第三方的宏,但他們編寫的模板將應用於該部分。
「+」和「-'是否適用於所有標籤? '{%endif +%}'給我'語句塊'預期標記結束',得到'+'':( –
另外,'{%如果爲真+%}'給我'意外'語句結束' '也許jinja2從那以後發展了嗎? –
請報告作爲Jinja的錯誤。 – davidism
- 1. 如何從Java源代碼中刪除不必要的空格?
- 2. 刪除不必要的主題空間
- 3. 從wcf中刪除不必要的xsi和xsd命名空間
- 4. 從HTML中刪除所有空白/不必要的節點
- 5. 從ExpressionEngine模板中刪除空白
- 6. 刪除不必要的模型
- 7. 從GridView項目模板中刪除多餘的空格
- 8. WPF ListView不呈現模板
- 9. dompdf:如何從pdf中呈現的表格中刪除邊框?
- 10. 格式化時間刪除不必要的00從計時器
- 11. 從擴展模板中覆蓋包含模板中的Jinja塊
- 12. 從RadioSelect中刪除空格「---------」
- 13. css代碼刪除不必要的空白空間
- 14. 從JTable中刪除呈現器
- 15. 在html中刪除不必要的空白
- 16. 如何在VIM中加入兩條線並刪除不必要的空格
- 17. jQuery模板呈現
- 18. Django ModelForm不在模板中呈現
- 19. 如何在流星中呈現不同模板時刪除類別
- 20. 枝條呈現模板內的模板
- 21. 從呈現視圖的模板呈現html
- 22. 在Apache中刪除不必要的登錄模塊Karaf
- 23. Java replaceAll從空行中刪除空格
- 24. 從Bash中的變量中刪除主要空格
- 25. 刪除從變量不必要的符號中的JMeter
- 26. 如何使用模板別名刪除一個不必要的參數
- 27. 的ColdFusion刪除不必要的輸出
- 28. 的Cufón吸引不必要的空格
- 29. ContextMenu:刪除圖標欄和不必要的空間?
- 30. 如何從SQL * Plus結果中刪除不必要的字符?
相關:http://stackoverflow.com/questions/5191147/spaceless-tag-for-jinja-templates – davidism