如果應用啟用了行語句,就可以把一個行標記為一個語句。例如如果行語句前綴配置為?#,下面的兩個例子是等價的:
~~~
<ul>
# for item in seq
<li>{{ item }}</li>
# endfor
</ul>
<ul>
{% for item in seq %}
<li>{{ item }}</li>
{% endfor %}
</ul>
~~~
行語句前綴可以出現在一行的任意位置,只要它前面沒有文本。為了語句有更好的可讀 性,在塊的開始(比如?for?、?if?、?elif?等等)以冒號結尾:
~~~
# for item in seq:
...
# endfor
~~~
提示
若有未閉合的圓括號、花括號或方括號,行語句可以跨越多行:
~~~
<ul>
# for href, caption in [('index.html', 'Index'),
('about.html', 'About')]:
<li><a href="{{ href }}">{{ caption }}</a></li>
# endfor
</ul>
~~~
從 Jinja 2.2 開始,行注釋也可以使用了。例如如果配置?##?為行注釋前綴, 行中所有?##?之后的內容(不包括換行符)會被忽略:
~~~
# for item in seq:
<li>{{ item }}</li> ## this comment is ignored
# endfor
~~~
- 介紹
- 預備知識
- 安裝
- 基本 API 使用
- 實驗性的 Python 3 支持
- API
- 基礎
- Unicode
- 高層 API
- 自動轉義
- 標識符的說明
- 未定義類型
- 上下文
- 加載器
- 字節碼緩存
- 實用工具
- 異常
- 自定義過濾器
- 求值上下文
- 自定義測試
- 全局命名空間
- 低層 API
- 元 API
- 沙箱
- API
- 運算符攔截
- 模板設計者文檔
- 概要
- 變量
- 過濾器
- 測試
- 注釋
- 空白控制
- 轉義
- 行語句
- 模板繼承
- HTML 轉義
- 控制結構清單
- 導入上下文行為
- 表達式
- 內置過濾器清單
- 內置測試清單
- 全局函數清單
- 擴展
- 自動轉義擴展
- 擴展
- 添加擴展
- i18n 擴展
- 表達式語句
- 循環控制
- With 語句
- 自動轉義擴展
- 編寫擴展
- 集成
- Babel 集成
- Pylons
- TextMate
- Vim
- 從其它的模板引擎切換
- Jinja1
- Django
- Mako
- 提示和技巧
- Null-Master 退回
- 交替的行
- 高亮活動菜單項
- 訪問父級循環