> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mastermindcms.com/llms.txt
> Use this file to discover all available pages before exploring further.

# msm:foreach

> Повтор шаблона по списку

`<msm:foreach>` повторяет внутренний `<msm:template>` для списка элементов.

Поддерживает разные источники данных через `mode` (например: база данных, bean, repository).

## Каркас

```html theme={null}
<msm:foreach id="items" mode="BEAN" bean="someServiceImpl" scope="PROTOTYPE" items="getItems()" item-name="i">
  <msm:template>
    <div>${i|name}</div>
  </msm:template>
  <msm:empty>
    <div>No items</div>
  </msm:empty>
</msm:foreach>
```

## Частые атрибуты

| Атрибут                              | Значение                                                     |
| ------------------------------------ | ------------------------------------------------------------ |
| `mode`                               | Режим источника (например `DATABASE`, `BEAN`, `REPOSITORY`). |
| `item-name`                          | Префикс переменных для каждого item.                         |
| `bean` / `scope` / `items`           | Конфигурация источника bean.                                 |
| `database` / `collection` / `filter` | Конфигурация источника БД.                                   |
| `repository` / `query` / `sort`      | Конфигурация источника repository.                           |
| `offset` / `limit`                   | Подсказки для пагинации (если поддерживается).               |
| `header` / `footer`                  | Опциональный JSON для рендера header/footer.                 |
