Стандарты кодирования#
При написании шаблонов Twig мы рекомендуем вам следовать этим официальным стандартам кодирования:
Ставьте один (и только один) пробел после начала разделителя (
{{
,{%
,{#
) и до конца разделителей (}}
,%}
,#}
):{{ foo }} {# комментарий #} {% if foo %}{% endif %}
При использовании управляющего символа пробела не ставьте пробелы между ним и разделителем:
{{- foo -}} {#- комментарий -#} {%- if foo -%}{%- endif -%}
Ставьте один (и только один) пробел до и после следующих операторов: операторы сравнения (
==
,!=
,<
,>
,>=
,<=
), математические операторы (+
,-
,/
,*
,%
,//
,**
), логические операторы (not
,and
,or
),~
,is
,in
и тернарный оператор (?:
):{{ 1 + 2 }} {{ foo ~ bar }} {{ true ? true : false }}
Ставьте один (и только один) пробел после
:
в хешах и,
в массивах и хешах:{{ [1, 2, 3] }} {{ {'foo': 'bar'} }}
Не ставьте пробелы после открывающей скобки и перед закрывающей скобкой в выражениях:
{{ 1 + (2 * 3) }}
Не ставьте пробелы до и после разделителей строк:
{{ 'foo' }} {{ "foo" }}
Не ставьте пробелы до и после следующих операторов:
|
,.
,..
,[]
:{{ foo|upper|lower }} {{ user.name }} {{ user[name] }} {% for i in 1..12 %}{% endfor %}
Не ставьте пробелы до и после скобок, используемых для вызовов фильтров и функций:
{{ foo|default('foo') }} {{ range(1..10) }}
Не ставьте пробелы до и после открытия и закрытия массивов и хешей:
{{ [1, 2, 3] }} {{ {'foo': 'bar'} }}
Используйте в нижнем регистре имена переменных и подчеркивания:
{% set foo = 'foo' %} {% set foo_bar = 'foo' %}
Сделайте отступ вашего кода внутри тегов (используйте тот же отступ, что и во всех блоках шаблона):
{% block foo %} {% if true %} true {% endif %} {% endblock %}