JinjaJinja (произносится как дзиндзя) — это шаблонизатор для языка программирования Python. Он подобен шаблонизатору Django, но предоставляет Python-подобные выражения, обеспечивая исполнение шаблонов в песочнице. Это текстовый шаблонизатор, поэтому он может быть использован для создания любого вида разметки, а также исходного кода. Лицензирован под лицензией BSD. Шаблонизатор Jinja позволяет настраивать теги[1], фильтры, тесты и глобальные переменные[2]. В отличие от шаблонизатора Django, Jinja позволяет конструктору шаблонов вызывать функции с аргументами на объектах. Jinja, как и Smarty, также поставляется с простой в использовании системой фильтров, похожей на конвейер Unix. ПримерПростой пример шаблона: from jinja import from_string
tmpl = from_string('''\
<html>
<head><title>{{ variable|escape }}</title></head>
<body>
{% for item in item_list %}
{{ item }}{% if not loop.last %},{% endif %}
{% endfor %}
</body>
</html>''')
print(tmpl.render(
variable='Value with <unsafe> data',
item_list=[1, 2, 3, 4, 5, 6]
))
Результат в HTML: <html>
<head><title>Value with <unsafe> data</title></head>
<body>
1,
2,
3,
4,
5,
6
</body>
</html>
ПрименениеПомимо веб-фреймворков (Flask), Jinja2 используется и, например, в системе управления конфигурациями SaltStack[3] и Ansible. Примечания
Литература
Ссылки |
Portal di Ensiklopedia Dunia