klein/README.md

1.1 KiB

Простой шаблонизатор

Для подсветки синтаксиса в редакторах можно выбрать Twig или Django

Переменные

Для переменной name=Ivan шаблон

<b>Hello, {{ name }}</div>

преобразуется в

<b>Hello, Ivan</div>
<b>Hello, {{! name }} </div>

преобразуется в

<b>Hello, <!-- Ivan --></div>

Циклы

<ul>
    {% for user in users %}
        <li>Hello, {{ user.name }}</li>
    {% endfor %}
</ul>

Условия

<ul>
    {% for user in users %}
        {% if user.is_russian %}
            <li>Привет, {{ user.name }}</li>
        {% else %}
            <li>Hello, {{ user.name }}</li>
        {% endif %}
    {% endfor %}
</ul>

Макрос

{% macro hello(user) %}
    {% if user.is_russian %}
        <li>Привет, {{ user.name }}</li>
    {% else %}
        <li>Hello, {{ user.name }}</li>
    {% endif %}
{% endmacro %}
<ul>
    {% for user in users %}
        {{ hello(user) }}
    {% endfor %}
</ul>