Массивы
Last updated
Last updated
Массивы содержат переменные для вывода динамического содержимого на странице. Например, массив store
содержит переменную с именем name
, которую можно использовать для вывода названия склада.
Чтобы вывести переменную массива, оберните имя объекта в {{
и }}
, как показано ниже:
Для каждого документа справочник доступных массивов и переменных в них отличается.
Полный список объектов и переменных в них, доступный для того или иного документа МойСклад можно найти в справочнике "Язык Шаблонов" на странице создания или редактирования шаблонов.
Для некоторых документов МоегоСклада вы можете обнаружить массивы, которые содержатся в многомерных массивах. О них стоит упомянуть отдельно.
На скриншоте выше приведен справочник Языка Шаблонов для документа "Заказ покупателя". Массивы attributes, purchaseOrders, demand, payments, invoicesOut, positions многомерные.
Это означает, что у "Заказа покупателя" может быть несколько "Дополнительных полей", "Заказов поставщику", "Отгрузок" и т.д.
Например, если нужно отправить название первой отгрузки для данного заказа покупателя, объект Liquid будет следующего содержания:
Говоря простым языком, в массиве demands
(Отгрузки) содержится несколько других массивов demand
(Отгрузка), у каждого из которых есть переменная name
.
Индекс [0]
и first говорят, что нужно выбрать переменную name для первой отгрузки.
Если нужно выбрать вторую отгрузку, надо использовать индекс [1]
, третью [2]
, четвертую [3]
и т.д.
Следующий код шаблона, если у заказа есть две отгрузки:
Соответсвенно выведет:
Если количество отгрузок неизвестно, можно вывести все, используя логику Liquid - тег итератора {% for %}
:
Соответственно выведет
Если нужно выбрать определенную отгрузку (например, нужно отправить номер отгрузки, которая находится в статусе Выполнена
) - нужно использовать логику Liquid - теги итератора {% for %}
и проверки условия {% if %}
Подробнее про теги логики языка Liquid {% for %
} {% if %}
{% else %}
и другие читайте по ссылке.