Режим отображения “Коллекция” и “Ссылка”

Режимы отображения типа представления “Коллекция” и “Ссылка” - это следующие константы в платформе:

module.exports = {
  TEXT_SIMPLE: 0,
  TEXT_AUTOCOMPLETE: 1,

  COLLECTION_LIST: 0,
  COLLECTION_LINK: 1,
  COLLECTION_LINKS: 2,
  COLLECTION_TABLE: 3,
  COLLECTION_HASHTAGS: 4,

  REF_STRING: 0,
  REF_LINK: 1,
  REF_INFO: 2,
  REF_HIERARCHY: 3,
  REF_SPECIFY: 4,

  GEO_MAP: 0,
  GEO_LOCATOR: 1,
  GEO_CANVAS: 2,

  GROUP_VERTICAL: 0,
  GROUP_HORIZONTAL: 1
};

Для атрибута с типом “Коллекция” на форме представления реализованы режимы отображения "mode":

  • "mode": 0 - Список
  • "mode": 1 - Ссылка
  • "mode": 2 - Список ссылок
  • "mode": 3 - Таблица
  • "mode": 4 - Облако тегов

Для атрибута с типом “Ссылка” на форме представления реализованы режимы отображения "mode":

  • "mode": 0 - Строка
  • "mode": 1 - Ссылка
  • "mode": 2 - Форма
  • "mode": 3 - Иерархическая ссылка
  • "mode": 4 - Уточняющий поиск

Подробнее “Иерархическая ссылка”

В режиме Иерархическое поле, на основании заданных вложенных полей (fields) отображаются параметры фильтра на уровни иерархии. При первичной инициализации поля, выполняется ajax-запрос к контроллеру на получение первого списка выбора (фильтр не задан). При получении ответа от сервера отображается первое поле фильтра со списком выбора. Далее при выборе значения в каждом из полей фильтра сбрасываются значения следующих за ним полей и запрашивается новый список выбора для следующего поля. Поля не имеющие списка выбора скрываются. Если в списке выбора получен один вариант, он автоматически присваивается в фильтр и выполняется определение списка выбора для следующего уровня иерархии. При получении специального значения “transit” вместо списка выбора в следующий фильтр присваивается значение текущего и выполняется процедура получения списка выбора для очередного уровня иерархии, а поле, соответствующее фильтру, скрывается. Когда заданы значения всех полей фильтрации, контроллер возвращает список выбора объекта по ссылке, который автоматически отображается в отдельном поле расположенном после полей фильтрации.

Подробнее “Уточняющий поиск”

Поля уточняющего поиска нужны для того, чтобы упростить поиск объектов в ссылке. Проектировщик меты, исходя из предметной области, может определить часть атрибутивного состава искомого объекта как “уточняющую” и, таким образом, облегчить задачу как для БД, так и для пользователя. Т.е. вместо выбора из всего множества продуктов мы сперва выбираем значение поля “производитель”, затем значение поля “тип продукта”, варианты которого уже ограничены предыдущим фильтром, и т.д, таким образом существенно сокращаем выборку только теми продуктами, что соответствуют уточняющим атрибутам. Для такого поля становится возможным указать поля, которые будут ссылаться на атрибуты класса по ссылке и станут “уточняющими”.