Jinja的基础知识
Jinja的基礎知識
介紹:Jinja2 是一個現代的,設計者友好的,仿照 Django 模板的 Python 模板語言。 它速度快,被廣泛使用,并且提供了可選的沙箱模板執行環境保證安全
基本操作
變量:使用{{}}包圍
<a>{{user.username}}</a>注釋:注釋代碼塊使用 {# Documents #} 來表示
控制語句:使用{{% 控制流程 %}}來編寫控制代碼塊
{% if a %}<p>hello a</p> {% else %}<p>hello b</p> {% endif %}循環:
在 Jinja 中需要同時使用循環語句和 if 語句來模擬 continue 語句的功能。
可以使用 Jinja 提供的 loop 變量來模型 Python 中的 enumerate() 內置函數的功能。 loop 變量可以返回一些關于 for 循環的信息,如: 索引號。
過濾器:用于處理變量代碼塊中的變量。過濾器與變量用管道符號( | )分割,并且也 可以用圓括號傳遞可選參數。多個過濾器可以鏈式調用,前一個過濾器的輸出會被作為 后一個過濾器的輸入。
# 有參數{{ variable | filter_name }}# 或無參數{{ variables | filter_name(*args) }}
常用過濾器:http://blog.csdn.net/jmilk/article/details/53292248宏:類似于函數,會返回一個 Jinja 模板或 HTML 字符串。其最主要的功能就是提高代碼的重用性。如:
{% macro input(name, label, value='', type='text')%}<div class="form-group"><label for"{{ name }}">{{ label }}</div><input type="{{ type }}" name="{{ name }}"value="{{ value | escape }}" class="form-control"></div> {% endmacro %}input():是宏的名字,類似于函數名
(name, label, value='', type='text'):是宏的參數,類似于函數的必備參數和缺省參數
調用
- 結果
文章參考自:
http://blog.csdn.net/jmilk/article/details/53264049
http://docs.jinkan.org/docs/jinja2/templates.html#id7
總結
以上是生活随笔為你收集整理的Jinja的基础知识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言赋值运算符左边必须是,C语言运算符
- 下一篇: SSM面试题及相关答案