Правила валидации для элементов модели

Материал из CMS Sitebill Wiki
Перейти к навигации Перейти к поиску

Элементы модели поддерживают указание дополнительного параметра валидации для значения. Правила задаются в форме редактирования поля модели в разделе Параметры. Для создания набора правил валидации необходимо в Параметрах дjбавить параметр с именем rules а в качестве его значения указать строку, содержащую правила.


Например строка правил может представлять собой следующее NotBlank,Type:string,Email,MinLength:4

Принципиально различаются три типа валидируемых значений string - cтрока (является дефолтной. Если тип величины не задан явно, будет считаться, что имелась в виду строка), int - целое знаковое число, decimal - дробное число с точкои в виде разделителя.

Правила общие для всех трех типов
NotBlank - значение не должно быть пустым. В некоторой мере дублирует свойство поля модели Обязательное (required)

Правила для строк
Email - строка должна соответствовать адресу электронной почты. Дублирует тип поля модели email
MinLength - минимальная длинна строки. Указывается в виде MinLength:5
MaxLength - максимальная длинна строки. Указывается в виде MaxLength:54

Правила для целых чисел и для дробных
Min - минимальное значение. Указывается в виде Min:5
Max - максимальное значение. Указывается в виде Max:100

Примеры
Правило для поля Площади кухни Type:int,Min:3,Max:100
мы требуем целое положительное число в диапазоне от 3 до 100.

Правило для поля Ставки на аукционе Type:int,Min:0,Max:20000
мы требуем целое положительное число до 20 000.

Правило для поля Пароль MinLength:6,MaxLength:32
Необходима строка от 6 до 32 символов.

Правила записываются в одну строку без пробелов. Отделяются друг от друга запятой. Простые правила, как Email, NotBlank записываются в виде своего имени. Правила, которые требуют аргумент, как Min\Max, записываются с аргументом через двоеточие.