Эта документация была автоматически переведена ИИ.
Проверка полей
Для обеспечения точности, безопасности и согласованности данных в коллекциях NocoBase предлагает функциональность проверки полей. Эта функция состоит из двух основных частей: настройка правил и применение правил.
Настройка правил

Системные поля NocoBase используют правила Joi, поддерживая следующие возможности:
Строковый тип
Строковые типы Joi соответствуют следующим типам полей NocoBase: Однострочный текст, Многострочный текст, Номер телефона, Электронная почта, URL, Пароль и UUID.
Общие правила
- Минимальная длина
- Максимальная длина
- Длина
- Регулярное выражение
- Обязательное поле
Электронная почта

Посмотреть дополнительные параметры
URL

Посмотреть дополнительные параметры
UUID

Посмотреть дополнительные параметры
Числовой тип
Числовые типы Joi соответствуют следующим типам полей NocoBase: Целое число, Число и Процент.
Общие правила
- Больше чем
- Меньше чем
- Максимальное значение
- Минимальное значение
- Кратное (число)
Целое число
Помимо общих правил, поля типа «Целое число» дополнительно поддерживают проверку на целое число и проверку на небезопасное целое число.

Число и Процент
Помимо общих правил, поля типа «Число» и «Процент» дополнительно поддерживают проверку точности.

Тип «Дата»
Типы даты Joi соответствуют следующим типам полей NocoBase: Дата (с часовым поясом), Дата (без часового п ояса), Только дата и Unix-метка времени.
Поддерживаемые правила проверки:
- Больше чем
- Меньше чем
- Максимальное значение
- Минимальное значение
- Проверка формата метки времени
- Обязательное поле
Поля связей
Поля связей поддерживают только проверку на обязательность заполнения. Обратите внимание, что проверка обязательности для полей связей в настоящее время не поддерживается в сценариях с вложенными формами или таблицами.

Применение правил проверки
После настройки правил для полей соответствующие правила проверки будут срабатывать при добавлении или изменении данных.

Правила проверки также применяются к компонентам вложенных таблиц и вложенных форм:


Обратите внимание, что в сценариях с вложенными формами или таблицами проверка обязательности для полей связей не действует.

Отличия от клиентской проверки полей
Клиентская и серверная проверки полей применяются в разных сценариях и имеют существенные различия в реализации и моменте срабатывания правил, поэтому их необходимо управлять отдельно.
Различия в способах настройки
- Клиентская проверка: Правила настраиваются в формах редактирования (как показано на рисунке ниже).
- Серверная проверка полей: Правила для полей задаются в разделе Источник данных → Настройка коллекции.


Различия в моменте срабатывания проверки
- Клиентская проверка: Срабатывает в реальном времени, когда пользователь заполняет поля, и немедленно отображает сообщения об ошибках.
- Серверная проверка полей: Выполняется на стороне сервера после отправки данных, но до их сохранения в базу. Сообщения об ошибках возвращаются в ответе API.
- Область применения: Серверная проверка полей действует не только при отправке форм, но и во всех сценариях, связанных с добавлением или изменением данных, таких как рабочие процессы и импорт данных.
- Сообщения об ошибках: Клиентская проверка поддерживает настраиваемые сообщения об ошибках, тогда как серверная проверка в настоящее время не поддерживает их.

