Поле отношений (PRO)
Связь этой записи с записями другой модели — товара с брендом, статьи с авторами.
Настройки:
| Настройка | Что делает |
|---|---|
| Тип связи | one_to_one, many_to_one, one_to_many, many_to_many |
| Выбор | Выпадающим списком или модальным окном — модальное работает только у вариантов *_to_one |
| Модель | С чем связываем |
| Текст | Что видит редактор в списке, по умолчанию name |
| Значение | Что сохраняется, по умолчанию id |
| Поле для сортировки, Направление сортировки, Записей на странице | Каким будет предлагаемый список |
| Условие (where) | Фильтр в виде JSON, чтобы предлагалось только подходящее |
Тип определяет вид значения. Два варианта *_to_one сохраняют один идентификатор, два варианта *_to_many — список и позволяют выбрать несколько.
Вывод:
html
{foreach $authors as $id}
…
{/foreach}Поле хранит идентификаторы, а не записи
В значение попадают id — и только они. Готового сниппета, который превратит их обратно в строки, нет, так что забирайте записи сами, по сохранённым идентификаторам:
html
{pbList(model = 'Author', where = '{"id:IN": ' ~ $authors ~ '}', tpl = 'author')}Это стоит учесть при выборе поля: оно связывает записи, но не подставляет их.