#Типы полей
Тип поля решает три вещи: как поле выглядит в форме записи, как значение хранится в базе и что подставится в вёрстку.
#Основное
| Тип | Форма записи | В базе | В вёрстке |
|---|---|---|---|
| Текст | строка | text | как есть |
| Область текста | многострочное поле | longtext | как есть |
| Число | поле для целого | int | как есть |
| Цена | поле для суммы | decimal(12,2) | «1 990 ₽», плюс _raw |
| Диапазон | ползунок | text | как есть |
| строка с проверкой | text | как есть | |
| Ссылка | строка с проверкой | text | как есть |
| Пароль | скрытый ввод | text | — |
Цена — decimal, а не дробное число с плавающей точкой. У последнего
1990.10 хранится как 1990.0999…, и сумма заказа из десяти позиций
расходится с бумажной на копейки.
У цены есть вторая метка — сырое число без форматирования:
<span>{module.shop.cena}</span> <!-- 1 990 ₽ -->
<input value="{module.shop.cena_raw}"> <!-- 1990.00 -->#Содержание
| Тип | Что даёт |
|---|---|
| Изображение | выбор картинки из файлов сайта |
| Галерея | несколько картинок |
| Файл | документ на скачивание |
| Редактор | форматирование текста мышью (WYSIWYG) |
| Медиа | вставка видео по ссылке (YouTube, VK) |
Поля картинок дают в вёрстке несколько меток:
<img src="{module.portfolio.kartinka}"
srcset="/uploads/m/{module.portfolio.kartinka_name}-m.webp">Значения путей к файлам подставляются закодированными: пробел в имени
файла иначе ломает srcset целиком. Заголовки и тексты не кодируются —
в них может быть нужная разметка.
#Код
| Тип | Что даёт |
|---|---|
| HTML — с визуальным редактором | разметка плюс кнопка визуального редактора |
| CSS | стили с подсветкой |
| JS | скрипты с подсветкой |
Три отдельных типа, а не один с выбором языка: поле должно само знать,
чем его подсвечивать и какой редактор к нему звать. Поля CSS и JS рядом
с полем HTML визуальный редактор находит сам — и пишет стили туда, а не
в атрибут style.
#Выбор
| Тип | Что даёт |
|---|---|
| Выбор из справочника | список значений из другого справочника — связи |
| Флажки | несколько значений |
| Переключатель | одно значение из нескольких |
| Да / Нет | галочка |
#Дата и цвет
| Тип | Что даёт |
|---|---|
| Дата | календарь |
| Дата и время | календарь с часами |
| Время | только часы |
| Цвет | палитра, хранит #6B4BE8 |
У дат — вторая метка для машинного вида:
<time datetime="{module.blog.data_iso}">{module.blog.data}</time>
<!-- datetime="2026-05-12", внутри «12 мая 2026» -->#Смена типа у заполненного поля
Менять тип можно, но осторожно:
| Переход | Что будет |
|---|---|
| Текст → Выбор из справочника | безопасно: хранилище то же |
| Текст → Число | часть значений станет нулями |
| Число → Текст | безопасно |
| Дата → Текст | значение останется машинным |
Обновление решения меняет тип поля само только когда хранилище то же. Если разное — предупредит и не тронет: молча превращать текст в число нельзя.
#Отменённый тип
Конструктор страниц (pagebuilder) больше не заводят. Уже заведённые
поля работают: хранилище у него то же, что у HTML, поэтому смена типа
такому полю ничего не испортит. Вместо него — тип «HTML» и визуальный
редактор.