Как работать с элементами коллекции с помощью цикла for...end for и set
Некоторые параметры содержат не одно значение, а набор из нескольких объектов, например, все покупки в заказе.
В шаблоне можно вывести блок верстки для каждого такого объекта:
@{for item in Order.Items}
Название: ${item.Product.Name}
Цена: ${item.Price}
@{end for}
В этом примере item
- произвольное имя, которое дается одной покупке, чтобы выводить ее параметры. Внутри блока for...end for
можно обращаться к конкретной покупке. Помимо этого, внутри может быть абсолютно произвольная верстка с HTML, условиями и даже вложенными циклами.
Если в этом примере у человека три покупки, вывод будет таким:
Цена: 5
Цена: 10
Цена: 25
Также можно использовать ключевое слово set в виде: @{ set a = a + 1 }
, и получится счётчик.
Примеры использования.
- Вывести сумму покупок:
@{set Total = 0}
@{for product in Session.GetAddedToListProducts("Korzina").Take(10)}
@{set Total = Total + product.Price}
@{end for}
${Total}
- Перечислить id продуктов через запятую:
@{set Ids = ""}
@{for product in Products.GetBySegment("IzvestnyeVNalichii").Take(10)}
@{if Ids != ""}
@{set Ids = Ids & ","}
@{end if}
@{set Ids = Ids & product.IDs.C1}
@{end for}
${Ids}
Критическое влияние одного слова на конверсию: тесты и результаты