Использование циклов в сообщениях
В сообщении реализована поддержка циклов для JSON переменных типа список (list) [] и объект (object) {}, а также обращение к элементу объекта по ключу {json.object.name}.
Если в качестве переменной в ша блон вставляются дополнительные поля профиля, то поля типа "Массив объектов" и "Тег" (список строк) тоже могут использоваться в циклах.
Также возможно использовать вложенные циклы.
Пример переменных
{
"Addresses": [
"улица Барклая, дом 444, корпус 24",
"улица Суво рова, дом 555, корпус 25"
],
"Information": {
"LJ": [
{"name": "Optimyss X1", "price": "$10"},
{"name": "Optimyss X2", "price": "$20"}
],
"Samsung": [
{"name": "Galaktiko 17", "price": "$50"}
]
}
}
Пример циклов
<h5>Наши новинки:</h5>
<!-- Цикл по элементам объекта -->
{for $vendor $models = json.Information}
<p>{$vendor}</p>
<ol>
<!-- Вложенный цикл -->
{for $index $model = $models}
<!-- Обращение к элементам по ключу -->
<li>{$model.name} {$model.price}</li>
{else}
<p>Empty array!</p>
{end}
</ol>
{else}
<p>Empty array!</p>
{end}
<h5>Адреса:</h5>
<ol>
<!-- Простой ци кл по списку строк -->
{for $index $address = json.Addresses}
<li>{$address}</li>
{else}
<p>Empty array!</p>
{end}
</ol>