Вы здесь

Кодирование Twig

При именовании переменных используйте только буквы нижнего регистра и знак подчёркивания:

    {% set foo = 'foo' %}
    {% set foo_bar = 'foo' %}

Для выделения иерархии внутри тегов используйте отступ (правило задания отступа определяется основным языком файла):

    {% block foo %}
       {% if true %}
           true
       {% endif %}
    {% endblock %}

Используйте пробел:

  • Перед и после разделителей {{ ... }}, {# ... #}, {% ... %}:
        {{ foo }}
        {# comment #}
        {% if foo %}{% endif %}
  • После знака «:» в хэшах и после знака «,» в массивах:
        {{ {'foo': 'bar'} }}
        {{ [1, 2, 3] }}
  • Вокруг операторов сравнения: ==, !=, <, >, >=, <=; математических операторов: +, -, /, *, %, //, **; логических операторов: not, and, or, is, in, ~, (?:):
        {{ 1 + 2 }}
        {{ foo ~ bar }}
        {{ true ? true : false }}

Не используйте пробел после и перед:

  • Закрывающими скобками в выражениях:
        {{ 1 + (2 * 3) }}

  • Разделителями строк:
        {{ 'foo' }}
        {{ "foo" }}
  • Операторами |, ., .., []:
        {{ foo|upper|lower }}
        {{ user.name }}
        {% for i in 1..12 %}{% endfor %}
        {{ user[name] }}
  • Скобками закрытия массивов и хэшей:
        {{ [1, 2, 3] }}
        {{ {'foo': 'bar'} }}
  • Скобками в случаях фильтрации и вызова функции:
        {{ range(1..10) }}
        {{ foo|default('foo') }}
  • Разделителями в случае использования знака контроля пробелов:
        {{- foo -}}
        {#- comment -#}
        {%- if foo -%}{%- endif -%}