Колонки
Колонки решают, как таблица выглядит в менеджере: какие значения показывает грид, в каком порядке и в каком виде.
Колонка обычно указывает на поле: полю принадлежат данные, колонке — их подача.
Что содержит строка колонки
| Настройка | Что делает |
|---|---|
| Поле | Какое поле показывает эта колонка |
| Заголовок | Замена заголовка. Пусто — берётся подпись поля |
| Ширина | Ширина колонки в гриде |
| Значение по умолчанию | Показывается, когда значение пустое |
| Сортируемая | Клик по заголовку сортирует по этой колонке |
| Искомая | Колонка участвует в поиске по гриду |
| Порядок | Место среди колонок |
| Опубликована | Неопубликованная колонка не рисуется |
Три вида колонки
Колонка не обязана показывать одно поле. Вид выбирается на самой колонке:
field — одно значение
Обычный случай: одно поле, одна ячейка.
group — несколько значений в одной ячейке
Несколько полей показываются вместе в одной колонке. Город и страна, ширина и высота — значения, которые читаются как одно целое и зря занимают по колонке каждое.
По умолчанию значения выводятся голыми. Включите с подписями — и каждое получит подпись своего поля; это нужно, когда значения сами за себя не говорят:
Москва, Россия ← без подписей
Город: Москва Страна: Россия ← с подписямиВыключено по умолчанию намеренно: колонка, которая ничего не просила, сохраняет тот простой вид, который был у неё до появления настройки.
renderIf — первое непустое
Несколько полей пробуются по очереди, побеждает первое непустое, а если пустые все — берётся значение по умолчанию колонки.
Это та самая лесенка запасных вариантов, которую иначе пишут в рендерере: отображаемое имя, потом название компании, потом логин. Одна колонка и ни одной пустой ячейки.
У сортировки есть предел
Колонку по полю конструктора отсортировать нельзя. Значение лежит внутри JSON-колонки, и упорядочить по нему запрос не может.
Фильтрация и поиск по таким полям при этом работают — не работает только ORDER BY.
У полей конструктора флаг сортировки не включайте
Если включить, грид не проигнорирует его молча — запрос упадёт. Грид начал падать после добавления колонки? Проверяйте это первым делом.
Колонки по настоящим колонкам таблицы сортируются как обычно.
Ширина — пожелание, а не обещание
Грид распределяет то, что осталось после колонок с фиксированной шириной, поэтому ширина соблюдается пропорционально, а не в пикселях. Задавайте её двум-трём колонкам, чей размер действительно важен, а остальным оставляйте ноль.