Babel 集成

2018-02-24 15:39 更新

Jinja 提供了用?Babel?抽取器從模板中抽取 gettext 消息的支持,抽取器的接入點(diǎn) 名為jinja2.ext.babel_extract?。 Babel 支持的被作為?i18n 擴(kuò)展?的 一部分實(shí)現(xiàn)。

Gettext 消息從?trans?標(biāo)簽和代碼表達(dá)式中抽取。

要從模板中抽取 gettext 消息,項(xiàng)目需要在它的 Babel 抽取方法?mapping file?中 有一個(gè) Jinja2 節(jié):

[jinja2: **/templates/**.html]
encoding = utf-8

Environment?的語(yǔ)法相關(guān)選項(xiàng)也可作為 mapping file 的配置值。例如告知 抽取器模板使用?%作為?line_statement_prefix?你可以這樣寫(xiě):

[jinja2: **/templates/**.html]
encoding = utf-8
line_statement_prefix = %

擴(kuò)展?可能也被定義為傳遞一個(gè)逗號(hào)分割的導(dǎo)入路徑列表作為?extensions?值。 i18n 擴(kuò)展會(huì)被自動(dòng)添加。

Changed in version 2.7:?直到 2.7 模板語(yǔ)法錯(cuò)誤始終被忽略。因?yàn)樵S多人在模板文件夾中放置非模板的 html 文件,而這會(huì)隨機(jī)報(bào)錯(cuò),所以如此設(shè)定。假定是無(wú)論如何測(cè)試套件會(huì)捕獲 模板中的語(yǔ)法錯(cuò)誤。如果你不想要這個(gè)行為,你可以在設(shè)置中添加?slient=flase?,異常會(huì)被傳播。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)